which workflows in this workflow calling-needing name: 'WaaS: Deployment pipeline'
on:
 workflow\_call:
 secrets:
 PERSONAL\_ACCESS\_TOKEN:
 required: true
 TECH\_PASSWORD:
 required: true
 IDAM\_SECRET\_PASSWORD:
 required: true
 GPG\_KEY:
 required: true
concurrency:
 group: ${{ github.workflow }}
 cancel-in-progress: true
jobs:
 github-release-version:
 uses: ./.github/workflows/generate-release-candidate-version.yaml
 create-draft-github-release:
 needs: [github-release-version]
 outputs:
 release-id: ${{ fromJson(steps.create\_github\_release.outputs.data).id }}
 runs-on: ubuntu-latest
 steps:
 - name: Create GitHub tag
 uses: octokit/request-action@v2.x
 with:
 route: POST /repos/{repo}/git/refs
 repo: ${{ github.repository }}
 ref: refs/tags/${{ needs.github-release-version.outputs.version }}
 sha: ${{ github.sha }}
 env:
 GITHUB\_TOKEN: ${{ secrets.GITHUB\_TOKEN }}
 - name: Create GitHub Release
 uses: octokit/request-action@v2.x
 id: create\_github\_release
 with:
 route: POST /repos/{repo}/releases
 repo: ${{ github.repository }}
 tag\_name: ${{ needs.github-release-version.outputs.version }}
 name: ${{ needs.github-release-version.outputs.version }}
 draft: true
 env:
 GITHUB\_TOKEN: ${{ secrets.GITHUB\_TOKEN }}
 commit-cycle:
 needs: [ create-draft-github-release ]
 uses: ./.github/workflows/commit-cycle.yaml
 secrets:
 GPG\_KEY: ${{ secrets.GPG\_KEY }}
 acceptance-cycle-dev:
 needs:
 - commit-cycle
 uses: ./.github/workflows/acceptance-cycle-dev.yaml
 acceptance-cycle-pp:
 needs:
 - acceptance-cycle-dev
 uses: ./.github/workflows/acceptance-cycle-pp.yaml
 testing:
 secrets:
 PERSONAL\_ACCESS\_TOKEN: ${{ secrets.PERSONAL\_ACCESS\_TOKEN }}
 TECH\_PASSWORD: ${{ secrets.TECH\_PASSWORD }}
 IDAM\_SECRET\_PASSWORD: ${{ secrets.IDAM\_SECRET\_PASSWORD }}
 needs:
 - acceptance-cycle-pp
 uses: ./.github/workflows/test.yaml
 upgrade-draft-github-release:
 needs: [ create-draft-github-release, acceptance-cycle-dev, acceptance-cycle-pp]
 outputs:
 prerelease: ${{ fromJson(steps.upgrade\_github\_release.outputs.data).prerelease }}
 runs-on: ubuntu-latest
 steps:
 - uses: actions/checkout@v3
 - name: Read pipeline properties
 run: |
 grep -v '^#' ".github/waas/pipeline.properties" | grep -v '^$' >> $GITHUB\_ENV
 - name: Upgrade Github release
 uses: octokit/request-action@v2.x
 id: upgrade\_github\_release
 with:
 route: PATCH /repos/{repo}/releases/{release\_id}
 repo: ${{ github.repository }}
 release\_id: ${{ needs.create-draft-github-release.outputs.release-id }}
 draft: false
 prerelease: false
 env:
 GITHUB\_TOKEN: ${{ secrets.GITHUB\_TOKEN }}
 downgrade-github-release:
 needs: [ create-draft-github-release, acceptance-cycle-dev, acceptance-cycle-pp ]
 if: ${{ failure() }}
 runs-on: ubuntu-latest
 steps:
 - name: Downgrade Github release
 uses: octokit/request-action@v2.x
 id: update\_github\_prerelease
 with:
 route: PATCH /repos/{repo}/releases/{release\_id}
 repo: ${{ github.repository }}
 release\_id: ${{ needs.create-draft-github-release.outputs.release-id }}
 draft: false
 prerelease: true
 env:
 GITHUB\_TOKEN: ${{ secrets.GITHUB\_TOKEN }}
 delete-github-release:
 needs: [ create-draft-github-release, acceptance-cycle-dev, acceptance-cycle-pp ]
 if: ${{ cancelled() || failure() }}
 runs-on: ubuntu-latest
 steps:
 - name: Delete Github release
 uses: octokit/request-action@v2.x
 id: delete\_github\_release
 with:
 route: DELETE /repos/{repo}/releases/{release\_id}
 repo: ${{ github.repository }}
 release\_id: ${{ needs.create-draft-github-release.outputs.release-id }}
 env:
 GITHUB\_TOKEN: ${{ secrets.GITHUB\_TOKEN }}
이 워크플로우에서 호출하는 워크플로우 이름: 'WaaS: 배포 파이프라인'켜고 워크플로우\_call: secrets: 개인\_액세스\_토큰: required: true tech\_password: 필수: true idam\_secret\_password: 필수: true GPG\_KEY: 필수: true동시성: 그룹: ${{ github.workflow }} 취소 진행 중: truejobs: github-release-version: 사용: ./.github/워크플로우/생성-리셋-후보-버전.yaml create-draft-github-release: needs: [github-release-version] 출력 release-id: ${{ fromJson(steps.create\_github\_release.outputs.data).id }} 실행: 우분투 최신 steps: - 이름: 깃허브 태그 생성 사용: octokit/request-action@v2.x with: 경로: POST /repos/{repo}/git/refs repo: ${{ github.repository }} ref: refs/tags/${{ needs.github-release-version.outputs.version }} sha: ${{ github.sha }} env: GITHUB\_TOKEN: ${{ secrets.GITHUB\_TOKEN }} - 이름: GitHub 릴리스 생성 사용: octokit/request-action@v2.x id: create\_github\_release with: route: POST /repos/{repo}/releases 리포지토리: ${{ github.repository }} 태그\_이름: ${{ needs.github-release-version.outputs.version }} name: ${{ needs.github-release-version.outputs.version }} draft: true env: GITHUB\_TOKEN: ${{ secrets.GITHUB\_TOKEN }} 커밋-사이클: needs: [ create-draft-github-release ]를 사용: ./.github/workflows/commit-cycle.yaml 비밀: GPG\_KEY: ${{ secrets.GPG\_KEY }} acceptance-cycle-dev: needs: - 커밋-사이클 사용: ./.github/workflows/acceptance-cycle-dev.yaml acceptance-cycle-pp: needs: - 수락-사이클-개발 사용: ./.github/workflows/acceptance-cycle-pp.yaml testing: secrets: 개인\_액세스\_토큰: ${{ secrets.PERSONAL\_액세스\_토큰 }} TECH\_PASSWORD: ${{ secrets.TECH\_PASSWORD }} IDAM\_SECRET\_PASSWORD: ${{ secrets.IDAM\_SECRET\_PASSWORD }} needs: - acceptance-cycle-pp 사용: ./.github/워크플로우/test.yaml upgrade-draft-github-release: needs: [ create-draft-github-release, acceptance-cycle-dev, acceptance-cycle-pp] 출력: prerelease: ${{ fromJson(steps.upgrade\_github\_release.outputs.data).prerelease }} 실행: 우분투 최신 steps: - 사용: actions/checkout@v3 - 이름: 파이프라인 속성 읽기 run: | grep -v '^#' ".github/waas/pipeline.properties" | grep -v '^$' >> $GITHUB\_ENV - 이름: Github 릴리스 업그레이드 사용: octokit/request-action@v2.x id: upgrade\_github\_release with: 경로: PATCH /repos/{repo}/releases/{release\_id} 리포지토리: ${{ github.repository }} release\_id: ${{ needs.create-draft-github-release.outputs.release-id }} draft: false prerelease: false env: GITHUB\_TOKEN: ${{ secrets.GITHUB\_TOKEN }} 다운그레이드-github-release: needs: [ create-draft-github-release, acceptance-cycle-dev, acceptance-cycle-pp ]가 필요합니다. if: ${{ failure() }} 실행: 우분투 최신 steps: - 이름: 깃허브 릴리스 다운그레이드 사용: octokit/request-action@v2.x id: update\_github\_prerelease with: 경로: PATCH /repos/{repo}/releases/{release\_id} 리포지토리: ${{ github.repository }} release\_id: ${{ needs.create-draft-github-release.outputs.release-id }} draft: false prerelease: true env: GITHUB\_TOKEN: ${{ secrets.GITHUB\_TOKEN }} delete-github-release: needs: [ create-draft-github-release, acceptance-cycle-dev, acceptance-cycle-pp ]. if: ${{ 취소() || 실패() }} 실행: 우분투 최신 단계 - 이름: 깃허브 릴리스 삭제 사용: octokit/request-action@v2.x id: delete\_github\_release with: 경로: DELETE /repos/{repo}/releases/{release\_id} 리포지토리: ${{ github.repository }} release\_id: ${{ needs.create-draft-github-release.outputs.release-id }} env: GITHUB\_TOKEN: ${{ secrets.GITHUB\_TOKEN }}