Skip to content

Commit 3ab8b87

Browse files
authored
Merge pull request #24 from ocaisa/update_actions
Update actions, add `dev.eessi.io` and prepare for MacOS support
2 parents e1f8f20 + 1db264e commit 3ab8b87

6 files changed

Lines changed: 56 additions & 37 deletions

File tree

.github/workflows/create_tags.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ jobs:
1111
permissions:
1212
contents: write
1313
steps:
14-
- uses: actions/checkout@93ea575cb5d8a053eaa0ac8fa3b40d7e05a33cc8 # v3.1.0
14+
- uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
1515
with:
1616
fetch-depth: '0'
1717
- uses: robinraju/release-downloader@d6de084c58345d09b017e22701dbcf26977cfd14 # v1.6

.github/workflows/macos.yml

Lines changed: 11 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
name: macOS-placeholder
1+
name: macOS-minimal
22
on:
33
push:
44
branches:
@@ -12,14 +12,15 @@ jobs:
1212
macOS-minimal:
1313
runs-on: macos-latest
1414
steps:
15-
- uses: actions/checkout@93ea575cb5d8a053eaa0ac8fa3b40d7e05a33cc8 # v3.1.0
16-
#- uses: eessi/github-action-eessi@main
17-
# with:
18-
# eessi_config_package: 'https://github.com/EESSI/filesystem-layer/releases/download/v0.3.0/cvmfs-config-eessi-0.3.0.pkg'
19-
# run_local_checkout: 'true'
20-
- name: Test EESSI
15+
- uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
16+
- uses: ./
17+
# - name: Test EESSI
18+
# run: |
19+
# direnv status
20+
# module avail
21+
# shell: bash
22+
- name: Test available repos
2123
run: |
22-
echo "This is only a placeholder until we figure out how to enable macOS support"
23-
echo "if we fix it, make sure to edit the README to include the macOS badge"
24-
echo "which is currently commented out"
24+
ls /cvmfs/software.eessi.io
25+
ls /cvmfs/dev.eessi.io
2526
shell: bash

.github/workflows/minimal-usage.yml

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,10 +12,15 @@ jobs:
1212
minimal_usage:
1313
runs-on: ubuntu-latest
1414
steps:
15-
- uses: actions/checkout@93ea575cb5d8a053eaa0ac8fa3b40d7e05a33cc8 # v3.1.0
15+
- uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
1616
- uses: ./
1717
- name: Test EESSI
1818
run: |
1919
direnv status
2020
module avail
2121
shell: bash
22+
- name: Test available repos
23+
run: |
24+
ls /cvmfs/software.eessi.io
25+
ls /cvmfs/dev.eessi.io
26+
shell: bash

.github/workflows/scorecards.yml

Lines changed: 6 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -4,24 +4,20 @@
44

55
name: Scorecards supply-chain security
66
on:
7-
# For Branch-Protection check. Only the default branch is supported. See
8-
# https://github.com/ossf/scorecard/blob/main/docs/checks.md#branch-protection
9-
branch_protection_rule:
107
# To guarantee Maintained check is occasionally updated. See
118
# https://github.com/ossf/scorecard/blob/main/docs/checks.md#maintained
129
schedule:
1310
- cron: '25 15 * * 3'
1411
push:
15-
branches: [ "main" ]
16-
pull_request:
17-
branches:
12+
branches:
1813
- main
1914

2015
# Declare default permissions as read only.
2116
permissions: read-all
2217

2318
jobs:
2419
analysis:
20+
if: github.repository_owner == 'EESSI' # Prevent running on forks
2521
name: Scorecards analysis
2622
runs-on: ubuntu-latest
2723
permissions:
@@ -35,12 +31,12 @@ jobs:
3531

3632
steps:
3733
- name: "Checkout code"
38-
uses: actions/checkout@93ea575cb5d8a053eaa0ac8fa3b40d7e05a33cc8 # v3.1.0
34+
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
3935
with:
4036
persist-credentials: false
4137

4238
- name: "Run analysis"
43-
uses: ossf/scorecard-action@99c53751e09b9529366343771cc321ec74e9bd3d # v2.0.6
39+
uses: ossf/scorecard-action@dc50aa9510b46c811795eb24b2f1ba02a914e534 # v2.3.3
4440
with:
4541
results_file: results.sarif
4642
results_format: sarif
@@ -62,14 +58,14 @@ jobs:
6258
# Upload the results as artifacts (optional). Commenting out will disable uploads of run results in SARIF
6359
# format to the repository Actions tab.
6460
- name: "Upload artifact"
65-
uses: actions/upload-artifact@3cea5372237819ed00197afe530f5a7ea3e805c8 # v3.1.0
61+
uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3
6662
with:
6763
name: SARIF file
6864
path: results.sarif
6965
retention-days: 5
7066

7167
# Upload the results to GitHub's code scanning dashboard.
7268
- name: "Upload to code-scanning"
73-
uses: github/codeql-action/upload-sarif@807578363a7869ca324a79039e6db9c843e0e100 # v2.1.27
69+
uses: github/codeql-action/upload-sarif@9fdb3e49720b44c48891d036bb502feb25684276 # v3.25.6
7470
with:
7571
sarif_file: results.sarif

.github/workflows/tensorflow-usage.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ jobs:
99
tensorflow_usage:
1010
runs-on: ubuntu-latest
1111
steps:
12-
- uses: actions/checkout@93ea575cb5d8a053eaa0ac8fa3b40d7e05a33cc8 # v3.1.0
12+
- uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
1313
- uses: eessi/github-action-eessi@main
1414
with:
1515
eessi_stack_version: '2023.06'

action.yml

Lines changed: 31 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -8,28 +8,45 @@ inputs:
88
description: 'Version of the EESSI stack to configure'
99
required: false
1010
default: '2023.06'
11+
eessi_repositories:
12+
description: 'Comma-separated list of fully qualified repository names that shall be mountable under /cvmfs.'
13+
required: false
14+
default: 'software.eessi.io,dev.eessi.io'
1115

1216
runs:
1317
using: "composite"
1418
steps:
15-
- uses: cvmfs-contrib/github-action-cvmfs@55899ca74cf78ab874bdf47f5a804e47c198743c # v4.0
19+
- uses: cvmfs-contrib/github-action-cvmfs@cec5c94a14714ab02980682fce8ab3de238401f9 # v4.0 + MacOS support
1620
with:
17-
cvmfs_config_package: https://github.com/EESSI/filesystem-layer/releases/download/latest/cvmfs-config-eessi_latest_all.deb
21+
# Can't use config package for macOS but our repos are available with the default configuration anyway
22+
# cvmfs_config_package: https://github.com/EESSI/filesystem-layer/releases/download/latest/cvmfs-config-eessi_latest_all.deb
1823
cvmfs_http_proxy: DIRECT
19-
cvmfs_repositories: software.eessi.io
24+
cvmfs_repositories: 'cvmfs-config.cern.ch,${{ inputs.eessi_repositories }}'
2025
- id: install-eessi
2126
run: |
22-
echo "EESSI_SILENT=1" >> $GITHUB_ENV
23-
echo 'unset BASH_ENV' >> $HOME/env_config.export
24-
echo "source /cvmfs/software.eessi.io/versions/$EESSI_STACK_VERSION/init/bash" >> $HOME/env_config.export
25-
sudo apt install -y direnv
26-
echo 'eval "$(direnv export bash)"' >> $HOME/env_config.export
27-
mkdir -p $HOME/direnv/
28-
echo "[whitelist]" >> $HOME/direnv/direnv.toml
29-
echo "prefix = [ '$GITHUB_WORKSPACE' ]" >> $HOME/direnv/direnv.toml
30-
cp $HOME/direnv/direnv.toml $HOME/direnv/config.toml
31-
echo "BASH_ENV=$HOME/env_config.export" >> $GITHUB_ENV
32-
echo "DIRENV_CONFIG=$HOME/direnv" >> $GITHUB_ENV
27+
if [ "$RUNNER_OS" == "Linux" ]; then
28+
echo "EESSI_SILENT=1" >> $GITHUB_ENV
29+
echo 'unset BASH_ENV' >> $HOME/env_config.export
30+
echo "source /cvmfs/software.eessi.io/versions/$EESSI_STACK_VERSION/init/bash" >> $HOME/env_config.export
31+
sudo apt install -y direnv
32+
echo 'eval "$(direnv export bash)"' >> $HOME/env_config.export
33+
mkdir -p $HOME/direnv/
34+
echo "[whitelist]" >> $HOME/direnv/direnv.toml
35+
echo "prefix = [ '$GITHUB_WORKSPACE' ]" >> $HOME/direnv/direnv.toml
36+
cp $HOME/direnv/direnv.toml $HOME/direnv/config.toml
37+
echo "BASH_ENV=$HOME/env_config.export" >> $GITHUB_ENV
38+
echo "DIRENV_CONFIG=$HOME/direnv" >> $GITHUB_ENV
39+
elif [ "$RUNNER_OS" == "macOS" ]; then
40+
# EESSI on macOS requires lima so we get a Linux VM, see https://gitlab.com/eessi/support/-/issues/70
41+
# (unfortunately this requires nested virtualisation in GitHub Actions which is not available with M1)
42+
brew install lima
43+
# limactl create --vm-type=vz --mount-type=virtiofs --network vzNAT --name eessi ./eessi.yaml
44+
# limactl create --name eessi ./eessi.yaml
45+
# limactl start eessi
46+
## For debugging
47+
# limactl start eessi || true
48+
# cat /Users/runner/.lima/eessi/ha.stderr.log
49+
fi
3350
shell: bash
3451
env:
3552
EESSI_STACK_VERSION: ${{ inputs.eessi_stack_version }}

0 commit comments

Comments
 (0)