Skip to content

Merge pull request #6120 from werf/feat-new-werf-io-deploy-dependency… #1202

Merge pull request #6120 from werf/feat-new-werf-io-deploy-dependency…

Merge pull request #6120 from werf/feat-new-werf-io-deploy-dependency… #1202

Workflow file for this run

name: test:main
on:
push:
branches:
- main
paths:
- "go.mod"
- "Taskfile.dist.yaml"
- ".github/**"
- "cmd/werf/**"
- "pkg/**"
- "integration/**"
- "scripts/**"
- "test/**"
pull_request:
types: [labeled]
repository_dispatch:
types: ["test:main"]
workflow_dispatch:
jobs:
unlabel:
if: |
github.event_name == 'pull_request' && github.event.label.name == 'trigger: test:main'
runs-on: ubuntu-22.04
steps:
- uses: actions/github-script@v6
with:
script: >
core.startGroup(`Remove label '${context.payload.label.name}' from issue ${context.issue.number} ...`);
try {
const response = await github.rest.issues.removeLabel({
owner: context.repo.owner,
repo: context.repo.repo,
issue_number: context.issue.number,
name: context.payload.label.name
});
if (response.status !== 204 || response.status !== 200) {
core.info(`Bad response on remove label: ${JSON.stringify(response)}`)
} else {
core.info(`Removed.`);
}
} catch (error) {
core.info(`Ignore error when removing label: may be it was removed by another workflow. Error: ${dumpError(error)}.`);
} finally {
core.endGroup()
}
integration_main:
if: |
github.event_name != 'pull_request' || github.event.label.name == 'trigger: test:main'
uses: ./.github/workflows/_test_integration_regular.yml
with:
packages: integration/suites
excludePackages: integration/suites/deploy,integration/suites/cleanup_after_converge,integration/suites/helm/deploy_rollback,integration/suites/bundles,integration/suites/ansible,integration/suites/build/stapel_image/git,integration/suites/docs
fetchDepth: 0 # Git history as fixtures for tests.
secrets: inherit
integration_git:
if: |
github.event_name != 'pull_request' || github.event.label.name == 'trigger: test:main'
uses: ./.github/workflows/_test_integration_regular.yml
with:
packages: integration/suites/build/stapel_image/git
secrets: inherit
integration_ansible:
if: |
github.event_name != 'pull_request' || github.event.label.name == 'trigger: test:main'
uses: ./.github/workflows/_test_integration_regular.yml
with:
packages: integration/suites/ansible
secrets: inherit
integration_per-k8s:
if: |
github.event_name != 'pull_request' || github.event.label.name == 'trigger: test:main'
uses: ./.github/workflows/_test_integration_per-k8s-version.yml
secrets: inherit
e2e_simple_per-k8s:
if: |
github.event_name != 'pull_request' || github.event.label.name == 'trigger: test:main'
uses: ./.github/workflows/_test_e2e_per-k8s-version.yml
with:
scope: simple
secrets: inherit
# e2e_complex_per-k8s:
# if: |
# github.event_name != 'pull_request' || github.event.label.name == 'trigger: test:main'
# uses: ./.github/workflows/_test_e2e_per-k8s-version.yml
# with:
# scope: complex
# timeout: 120
# secrets: inherit
notify:
if: |
(github.event_name == 'pull_request' && github.event.pull_request.draft == false && failure()) ||
(github.event_name != 'pull_request' && always())
needs:
- unlabel
- integration_main
- integration_git
- integration_ansible
- integration_per-k8s
- e2e_simple_per-k8s
# - e2e_complex_per-k8s
uses: ./.github/workflows/_notification.yml
secrets:
mentionGroupID: ${{ secrets.SLACK_MENTION_GROUP_ID }}
webhook: ${{ secrets.SLACK_WEBHOOK }}