mirror of
https://github.com/storytold/craft-common-actions.git
synced 2026-11-02 18:06:16 +00:00
Pin nested actions used by coverage jobs
This commit is contained in:
@@ -85,7 +85,7 @@ jobs:
|
||||
with:
|
||||
persist-credentials: false
|
||||
- name: Check out craft-fonts
|
||||
uses: storytold/craft-common-actions/actions/checkout-craft-fonts@main
|
||||
uses: storytold/craft-common-actions/actions/checkout-craft-fonts@395270d2c0bd48ce1b71ae127f2a54e435fc1b42
|
||||
with:
|
||||
ref: ${{ inputs.fonts-ref }}
|
||||
- name: Require requested craft-fonts
|
||||
@@ -95,7 +95,7 @@ jobs:
|
||||
- name: Free disk space
|
||||
run: sudo rm -rf /usr/share/dotnet /usr/local/lib/android /opt/ghc /opt/hostedtoolcache/CodeQL
|
||||
- name: Install Linux build dependencies
|
||||
uses: storytold/craft-common-actions/actions/install-apt-packages@main
|
||||
uses: storytold/craft-common-actions/actions/install-apt-packages@395270d2c0bd48ce1b71ae127f2a54e435fc1b42
|
||||
with:
|
||||
packages: >-
|
||||
pkg-config libxkbcommon-dev libwayland-dev libx11-dev libxcursor-dev libxrandr-dev
|
||||
@@ -153,7 +153,7 @@ jobs:
|
||||
with:
|
||||
persist-credentials: false
|
||||
- name: Check out craft-fonts
|
||||
uses: storytold/craft-common-actions/actions/checkout-craft-fonts@main
|
||||
uses: storytold/craft-common-actions/actions/checkout-craft-fonts@395270d2c0bd48ce1b71ae127f2a54e435fc1b42
|
||||
with:
|
||||
ref: ${{ inputs.fonts-ref }}
|
||||
- name: Require requested craft-fonts
|
||||
@@ -161,7 +161,7 @@ jobs:
|
||||
shell: bash
|
||||
run: echo "CRAFT_FONTS_REQUIRED=1" >> "$GITHUB_ENV"
|
||||
- name: Install Linux build dependencies
|
||||
uses: storytold/craft-common-actions/actions/install-apt-packages@main
|
||||
uses: storytold/craft-common-actions/actions/install-apt-packages@395270d2c0bd48ce1b71ae127f2a54e435fc1b42
|
||||
with:
|
||||
packages: >-
|
||||
pkg-config libxkbcommon-dev libwayland-dev libx11-dev libxcursor-dev libxrandr-dev
|
||||
@@ -237,7 +237,7 @@ jobs:
|
||||
printf 'key=%s\n' "$PROJECT_KEY" >>"$GITHUB_OUTPUT"
|
||||
- name: Check out craft-fonts
|
||||
if: steps.token.outputs.available == 'true' && inputs.shards <= 1
|
||||
uses: storytold/craft-common-actions/actions/checkout-craft-fonts@main
|
||||
uses: storytold/craft-common-actions/actions/checkout-craft-fonts@395270d2c0bd48ce1b71ae127f2a54e435fc1b42
|
||||
with:
|
||||
ref: ${{ inputs.fonts-ref }}
|
||||
- name: Require requested craft-fonts
|
||||
@@ -250,7 +250,7 @@ jobs:
|
||||
run: sudo rm -rf /usr/share/dotnet /usr/local/lib/android /opt/ghc /opt/hostedtoolcache/CodeQL
|
||||
- name: Install Linux build dependencies
|
||||
if: steps.token.outputs.available == 'true' && hashFiles('Cargo.toml') != '' && inputs.shards <= 1
|
||||
uses: storytold/craft-common-actions/actions/install-apt-packages@main
|
||||
uses: storytold/craft-common-actions/actions/install-apt-packages@395270d2c0bd48ce1b71ae127f2a54e435fc1b42
|
||||
with:
|
||||
packages: >-
|
||||
pkg-config libxkbcommon-dev libwayland-dev libx11-dev libxcursor-dev libxrandr-dev
|
||||
|
||||
@@ -84,6 +84,20 @@ class SonarCloudTests(unittest.TestCase):
|
||||
self.assertIn('--output-path lcov.info', coverage['run'])
|
||||
self.assertEqual(coverage['continue-on-error'], 'true')
|
||||
|
||||
def test_coverage_actions_use_immutable_revisions(self):
|
||||
workflow = yaml.load(
|
||||
(ROOT / '.github/workflows/sonarcloud.yml').read_text(), Loader=yaml.BaseLoader)
|
||||
step_groups = [job.get('steps', []) for job in workflow['jobs'].values()]
|
||||
for helper in ('checkout-craft-fonts', 'install-apt-packages'):
|
||||
action = yaml.load(
|
||||
(ROOT / 'actions' / helper / 'action.yml').read_text(), Loader=yaml.BaseLoader)
|
||||
step_groups.append(action['runs']['steps'])
|
||||
for steps in step_groups:
|
||||
for step in steps:
|
||||
if 'uses' in step:
|
||||
with self.subTest(action=step['uses']):
|
||||
self.assertRegex(step['uses'], r'^[^@]+@[0-9a-f]{40}$')
|
||||
|
||||
def test_archive_build_has_the_same_fonts_as_runtime(self):
|
||||
workflow = yaml.load(
|
||||
(ROOT / '.github/workflows/sonarcloud.yml').read_text(), Loader=yaml.BaseLoader)
|
||||
|
||||
Reference in New Issue
Block a user