package com.microservices.pms.pipeline.domain.vo;

import com.alibaba.fastjson2.JSONObject;
import com.microservices.system.api.domain.SimpleSysUser;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

/**
 * 流水线对象 pms_ci_pipelines
 * 
 * @author wanjia
 * @date 2024-03-02
 */
@Data
@ApiModel("流水线详情对象")
public class PmsCiPipelinesDetailVo
{

    private Long id;

    /** 流水线名称 */
    @ApiModelProperty(value = "流水线名称")
    private String pipelineName;

    /** enable/disable/succeeded/failed/running/errored/pending/killed/unknown */
    @ApiModelProperty(value = "enable/disable/succeeded/failed/running/errored/pending/killed/unknown")
    private String pipelineStatus;

    /** 文件名称 */
    @ApiModelProperty(value = "文件名称")
    private String fileName;

    /** 0 未同步到gitea，1 已同步 */
    @ApiModelProperty(value = "0 未同步到gitea，1 已同步")
    private Long sync;

    /** 仓库标识 */
    @ApiModelProperty(value = "仓库标识")
    private String repoIdentifier;

    /** 分支 */
    @ApiModelProperty(value = "分支")
    private String branch;

    @ApiModelProperty(value = "流水线类型 1-声明式 2-图形化")
    private Integer pipelineType;

    /** 事件 */
    @ApiModelProperty(value = "事件")
    private String event;

    /** 仓库拥有者标识 */
    @ApiModelProperty(value = "仓库拥有者标识")
    private String owner;

    @ApiModelProperty(value = "流水线配置文件内容")
    private String fileContent;

    /** 关联企业ID */
    @ApiModelProperty(value = "关联企业ID")
    private Long pmsEnterpriseId;

    /** 关联项目ID */
    @ApiModelProperty(value = "关联项目ID")
    private Long pmsProjectId;

    @ApiModelProperty(value = "创建者")
    private SimpleSysUser creator;

    @ApiModelProperty(value = "仓库名")
    private String repoName;

    @ApiModelProperty(value = "图形化JSON")
    private JSONObject pipelineGraphicJson;

    @ApiModelProperty(value = "流水线模板JSON")
    private JSONObject pipelineTemplateJson;

}
