From 989582f40eb48ec109a98c044e22683bb7a9d7f1 Mon Sep 17 00:00:00 2001 From: Pavel Vetokhin Date: Fri, 23 Feb 2024 13:17:10 +0300 Subject: [PATCH] Refine workflows --- .github/workflows/task_change.yaml | 53 +++++++++++++++++++ .../{sanity.yaml => task_proposal.yaml} | 4 +- .../{convincing.yaml => work_change.yaml} | 5 +- .../{beyond-doubt.yaml => work_proposal.yaml} | 8 ++- 4 files changed, 64 insertions(+), 6 deletions(-) create mode 100644 .github/workflows/task_change.yaml rename .github/workflows/{sanity.yaml => task_proposal.yaml} (97%) rename .github/workflows/{convincing.yaml => work_change.yaml} (97%) rename .github/workflows/{beyond-doubt.yaml => work_proposal.yaml} (98%) diff --git a/.github/workflows/task_change.yaml b/.github/workflows/task_change.yaml new file mode 100644 index 00000000..9f376760 --- /dev/null +++ b/.github/workflows/task_change.yaml @@ -0,0 +1,53 @@ +--- +name: Task change + +on: + push: + branches: + - task/** + workflow_dispatch: + +env: + IMAGE_NAME: stack/gear + +jobs: + up-to-sources: + name: Up to sources (${{ matrix.env.dev }}) + timeout-minutes: 5 + permissions: + checks: write + packages: write + strategy: + fail-fast: false + matrix: + env: + - dev: turing + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4.1.1 + - name: Run setup-gear + uses: ./.github/actions/setup-gear + with: + devenv: ${{ matrix.env.dev }} + token: ${{ secrets.GITHUB_TOKEN }} + - name: Run ansible-playbook sources.yaml + run: >- + docker run --rm + --volume $(pwd):$(pwd) + --volume ~/.m2:/root/.m2 + --workdir $(pwd)/baker/ansible + ${{ env.IMAGE_NAME }}:${{ matrix.env.dev }} + ansible-playbook sources.yaml + -e devenv=${{ matrix.env.dev }} + + everything-is-fine: + name: Everything is fine + needs: [up-to-sources] + runs-on: ubuntu-latest + timeout-minutes: 5 + if: ${{ always() }} + steps: + - if: ${{ contains(needs.*.result, 'failure') || contains(needs.*.result, 'skipped') || contains(needs.*.result, 'cancelled') }} + run: | + echo "::error::Something went wrong" + exit 1 diff --git a/.github/workflows/sanity.yaml b/.github/workflows/task_proposal.yaml similarity index 97% rename from .github/workflows/sanity.yaml rename to .github/workflows/task_proposal.yaml index 8ff9cbca..fea6216b 100644 --- a/.github/workflows/sanity.yaml +++ b/.github/workflows/task_proposal.yaml @@ -1,5 +1,5 @@ --- -name: Sanity +name: Task proposal on: pull_request: @@ -62,7 +62,7 @@ jobs: name: Everything is fine needs: [up-to-binaries] runs-on: ubuntu-latest - timeout-minutes: 10 + timeout-minutes: 5 if: ${{ always() }} steps: - if: ${{ contains(needs.*.result, 'failure') || contains(needs.*.result, 'skipped') || contains(needs.*.result, 'cancelled') }} diff --git a/.github/workflows/convincing.yaml b/.github/workflows/work_change.yaml similarity index 97% rename from .github/workflows/convincing.yaml rename to .github/workflows/work_change.yaml index 31da92e8..d5380b4d 100644 --- a/.github/workflows/convincing.yaml +++ b/.github/workflows/work_change.yaml @@ -1,8 +1,9 @@ --- -name: Convincing +name: Work change on: pull_request: + types: [synchronize] branches: - main workflow_dispatch: @@ -81,7 +82,7 @@ jobs: name: Everything is fine needs: [up-to-images] runs-on: ubuntu-latest - timeout-minutes: 10 + timeout-minutes: 5 if: ${{ always() }} steps: - if: ${{ contains(needs.*.result, 'failure') || contains(needs.*.result, 'skipped') || contains(needs.*.result, 'cancelled') }} diff --git a/.github/workflows/beyond-doubt.yaml b/.github/workflows/work_proposal.yaml similarity index 98% rename from .github/workflows/beyond-doubt.yaml rename to .github/workflows/work_proposal.yaml index 7b3b110b..4c213b4e 100644 --- a/.github/workflows/beyond-doubt.yaml +++ b/.github/workflows/work_proposal.yaml @@ -1,10 +1,14 @@ --- -name: Beyond doubt +name: Work proposal on: merge_group: branches: - main + pull_request: + types: [opened, reopened] + branches: + - main workflow_dispatch: env: @@ -237,7 +241,7 @@ jobs: name: Everything is fine needs: [stack-publishing, stack-reporting] runs-on: ubuntu-latest - timeout-minutes: 10 + timeout-minutes: 5 if: ${{ always() }} steps: - if: ${{ contains(needs.*.result, 'failure') || contains(needs.*.result, 'skipped') || contains(needs.*.result, 'cancelled') }}