mirror of
https://github.com/saltstack/salt.git
synced 2025-04-16 17:50:20 +00:00
Allow skipping the package tests when staging a release
Signed-off-by: Pedro Algarvio <palgarvio@vmware.com>
This commit is contained in:
parent
5fb3323e84
commit
72939b2b39
4 changed files with 24 additions and 5 deletions
6
.github/workflows/staging.yml
vendored
6
.github/workflows/staging.yml
vendored
|
@ -14,6 +14,10 @@ on:
|
|||
type: boolean
|
||||
default: false
|
||||
description: Skip running the Salt test suite.
|
||||
skip-salt-pkg-test-suite:
|
||||
type: boolean
|
||||
default: false
|
||||
description: Skip running the Salt packages test suite.
|
||||
|
||||
env:
|
||||
COLUMNS: 190
|
||||
|
@ -197,7 +201,7 @@ jobs:
|
|||
- name: Define Jobs
|
||||
id: define-jobs
|
||||
run: |
|
||||
tools ci define-jobs ${{ inputs.skip-salt-test-suite && '--skip-tests' || '' }} ${{ github.event_name }} changed-files.json
|
||||
tools ci define-jobs${{ inputs.skip-salt-test-suite && ' --skip-tests' || '' }}${{ inputs.skip-salt-pkg-test-suite && ' --skip-pkg-tests' || '' }} ${{ github.event_name }} changed-files.json
|
||||
|
||||
- name: Check Defined Jobs
|
||||
run: |
|
||||
|
|
3
.github/workflows/templates/layout.yml.jinja
vendored
3
.github/workflows/templates/layout.yml.jinja
vendored
|
@ -1,6 +1,7 @@
|
|||
# Do not edit these workflows directly as the changes made will be overwritten.
|
||||
# Instead, edit the template '<{ template }>'
|
||||
<%- set prepare_workflow_skip_test_suite = prepare_workflow_skip_test_suite|default("") %>
|
||||
<%- set prepare_workflow_skip_pkg_test_suite = prepare_workflow_skip_pkg_test_suite|default("") %>
|
||||
<%- set prepare_workflow_salt_version_input = prepare_workflow_salt_version_input|default("") %>
|
||||
<%- set python_version_linux = "3.10.10" %>
|
||||
<%- set python_version_macos = "3.10.10" %>
|
||||
|
@ -212,7 +213,7 @@ jobs:
|
|||
- name: Define Jobs
|
||||
id: define-jobs
|
||||
run: |
|
||||
tools ci define-jobs<{ prepare_workflow_skip_test_suite }> ${{ github.event_name }} changed-files.json
|
||||
tools ci define-jobs<{ prepare_workflow_skip_test_suite }><{ prepare_workflow_skip_pkg_test_suite }> ${{ github.event_name }} changed-files.json
|
||||
|
||||
- name: Check Defined Jobs
|
||||
run: |
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
<%- set prepare_workflow_salt_version_input = "${{ inputs.salt-version }}" %>
|
||||
<%- set prepare_workflow_skip_test_suite = " ${{ inputs.skip-salt-test-suite && '--skip-tests' || '' }}" %>
|
||||
<%- set prepare_workflow_skip_test_suite = "${{ inputs.skip-salt-test-suite && ' --skip-tests' || '' }}" %>
|
||||
<%- set prepare_workflow_skip_pkg_test_suite = "${{ inputs.skip-salt-pkg-test-suite && ' --skip-pkg-tests' || '' }}" %>
|
||||
<%- set gh_environment = "staging" %>
|
||||
<%- set prepare_actual_release = True %>
|
||||
<%- extends 'nightly.yml.jinja' %>
|
||||
|
@ -17,6 +18,10 @@ on:
|
|||
type: boolean
|
||||
default: false
|
||||
description: Skip running the Salt test suite.
|
||||
skip-salt-pkg-test-suite:
|
||||
type: boolean
|
||||
default: false
|
||||
description: Skip running the Salt packages test suite.
|
||||
|
||||
<%- endblock on %>
|
||||
|
||||
|
|
13
tools/ci.py
13
tools/ci.py
|
@ -223,6 +223,9 @@ def runner_types(ctx: Context, event_name: str):
|
|||
"skip_tests": {
|
||||
"help": "Skip running the Salt tests",
|
||||
},
|
||||
"skip_pkg_tests": {
|
||||
"help": "Skip running the Salt Package tests",
|
||||
},
|
||||
"changed_files": {
|
||||
"help": (
|
||||
"Path to '.json' file containing the payload of changed files "
|
||||
|
@ -232,7 +235,11 @@ def runner_types(ctx: Context, event_name: str):
|
|||
},
|
||||
)
|
||||
def define_jobs(
|
||||
ctx: Context, event_name: str, changed_files: pathlib.Path, skip_tests: bool = False
|
||||
ctx: Context,
|
||||
event_name: str,
|
||||
changed_files: pathlib.Path,
|
||||
skip_tests: bool = False,
|
||||
skip_pkg_tests: bool = False,
|
||||
):
|
||||
"""
|
||||
Set GH Actions 'jobs' output to know which jobs should run.
|
||||
|
@ -267,6 +274,8 @@ def define_jobs(
|
|||
|
||||
if skip_tests:
|
||||
jobs["test"] = False
|
||||
if skip_pkg_tests:
|
||||
jobs["test-pkg"] = False
|
||||
|
||||
if event_name != "pull_request":
|
||||
# In this case, all defined jobs should run
|
||||
|
@ -327,7 +336,7 @@ def define_jobs(
|
|||
required_pkg_test_changes: set[str] = {
|
||||
changed_files_contents["pkg_tests"],
|
||||
}
|
||||
if required_pkg_test_changes == {"false"}:
|
||||
if jobs["test-pkg"] and required_pkg_test_changes == {"false"}:
|
||||
with open(github_step_summary, "a", encoding="utf-8") as wfh:
|
||||
wfh.write("De-selecting the 'test-pkg' job.\n")
|
||||
jobs["test-pkg"] = False
|
||||
|
|
Loading…
Add table
Reference in a new issue