Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/actions/setup-runtime-env/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ runs:
- name: "Cache Deps / Build"
uses: actions/cache@5a3ec84eff668545956fd18022155c47e93e2684 # v4.2.3
with:
path: |
path: >-
deps
_build
key: "${{ format('{0}-{1}-{2}', inputs.mix-env, hashFiles('.tool-versions'), hashFiles('mix.exs')) }}"
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/part_build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@ jobs:
subject-path: 'burrito_out/mix_dependency_submission_*'
- name: "Copy provenance"
if: "${{ inputs.attest }}"
run: |
run: |-
for FILE in burrito_out/mix_dependency_submission_*; do
cp "$ATTESTATION" $FILE.sigstore
done
Expand Down
3 changes: 1 addition & 2 deletions .github/workflows/part_docs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -32,8 +32,7 @@ jobs:

- run: mix docs
- name: "Create Docs Archive"
run: |
tar -czvf docs.tar.gz doc
run: "tar -czvf docs.tar.gz doc"

- name: "Attest docs provenance"
uses: actions/attest-build-provenance@c074443f1aee8d4aeeae555aebba3282517141b2 # v2.2.3
Expand Down
36 changes: 18 additions & 18 deletions .github/workflows/part_release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -33,23 +33,23 @@ jobs:
if: ${{ !inputs.stable }}
env:
GITHUB_TOKEN: ${{ github.token }}
run: |
gh release create \
--repo ${{ github.repository }} \
--title ${{ inputs.releaseName }} \
--prerelease \
--generate-notes \
${{ inputs.releaseName }}
run: >-
gh release create
--repo ${{ github.repository }}
--title ${{ inputs.releaseName }}
--prerelease
--generate-notes
${{ inputs.releaseName }}
- name: Create release
if: ${{ inputs.stable }}
env:
GITHUB_TOKEN: ${{ github.token }}
run: |
gh release create \
--repo ${{ github.repository }} \
--title ${{ inputs.releaseName }} \
--generate-notes \
${{ inputs.releaseName }}
run: >-
gh release create
--repo ${{ github.repository }}
--title ${{ inputs.releaseName }}
--generate-notes
${{ inputs.releaseName }}

- name: "Download Docs Artifact"
uses: actions/download-artifact@95815c38cf2ff2164869cbab79da8d1f422bc89e # v4.2.1
Expand All @@ -65,8 +65,8 @@ jobs:
- name: Upload Artifacts
env:
GITHUB_TOKEN: ${{ github.token }}
run: |
gh release upload \
--repo ${{ github.repository }} \
--clobber "${{ inputs.releaseName }}" \
docs.tar.gz* mix_dependency_submission*
run: >-
gh release upload
--repo ${{ github.repository }}
--clobber "${{ inputs.releaseName }}"
docs.tar.gz* mix_dependency_submission*
32 changes: 23 additions & 9 deletions .github/workflows/part_report_deps.yml
Original file line number Diff line number Diff line change
@@ -1,20 +1,32 @@
on:
workflow_call: {}

name: "Build"
name: "Test Binary"

permissions:
contents: read

jobs:
binary:
name: "Binary"

runs-on: ubuntu-latest

permissions:
contents: write

strategy:
matrix:
runner:
- ubuntu-24.04 # X64
- ubuntu-24.04-arm # ARM64
- macos-13 # ARM64
- macos-15 # X64
- windows-2025 # X64
# Not currently supported by Burrito
# - windows-11-arm # ARM64

runs-on: "${{ matrix.runner }}"

name: "Submit Dependencies (${{ matrix.runner }})"

steps:
- name: Harden Runner
uses: step-security/harden-runner@c6295a65d1254861815972266d5933fd6e532bdf # v2.11.1
Expand All @@ -27,11 +39,13 @@ jobs:
name: binary
path: .

- run: chmod +x ./mix_dependency_submission_linux_amd64
- run: >-
chmod +x
./mix_dependency_submission_${{ runner.os }}_${{ runner.arch }}

- run: |
./mix_dependency_submission_linux_amd64 \
--install-deps \
--ignore test/fixtures
- run: >-
./mix_dependency_submission_${{ runner.os }}_${{ runner.arch }}
--install-deps
--ignore test/fixtures
env:
GITHUB_TOKEN: ${{ github.token }}
16 changes: 16 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -65,6 +65,22 @@ jobs:

None.

## OS and Architecture Support

This action supports the following operating systems and architectures, tested using the corresponding
[GitHub-hosted runners](https://docs.github.com/en/actions/using-github-hosted-runners/using-github-hosted-runners/about-github-hosted-runners#supported-runners-and-hardware-resources):

| Operating System | Architecture | Supported | Tested Runner |
|------------------|--------------|-----------|------------------------|
| Linux | x64 | ✅ | `ubuntu-24.04` |
| Linux | ARM64 | ✅ | `ubuntu-24.04-arm` |
| macOS | x64 | ✅ | `macos-13` |
| macOS | ARM64 | ✅ | `macos-15` |
| Windows | x64 | ✅ | `windows-2025` |
| Windows | ARM64 | ❌ | *(not supported)* |

> ❌ **Not supported**: Windows on ARM64 (due to missing support in
[burrito](https://github.com/burrito-elixir/burrito)).

## License

Expand Down
29 changes: 15 additions & 14 deletions action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -28,30 +28,31 @@ runs:
with:
repository: "erlef/mix-dependency-submission"
tag: "v1.0.0-beta.8"
fileName: "mix_dependency_submission_linux_amd64"
fileName: "mix_dependency_submission_${{ runner.os }}_${{ runner.arch }}"
out-file-path: "${{ runner.temp }}"
- name: "Verify Dependency Submission Tool Provenance"
run: |
gh attestation \
verify \
--repo erlef/mix-dependency-submission \
--source-ref refs/tags/v1.0.0-beta.8 \
"${{ runner.temp }}/mix_dependency_submission_linux_amd64"
run: >-
gh attestation verify
--repo erlef/mix-dependency-submission
--source-ref refs/tags/v1.0.0-beta.8
"${{ runner.temp }}/mix_dependency_submission_${{ runner.os }}_${{ runner.arch }}"
shell: "bash"
working-directory: "${{ runner.temp }}"
env:
GITHUB_TOKEN: ${{ github.token }}
- name: "Make Tool Executable"
run: "chmod +x mix_dependency_submission_linux_amd64"
run: >-
chmod +x
mix_dependency_submission_${{ runner.os }}_${{ runner.arch }}
shell: "bash"
working-directory: "${{ runner.temp }}"
- name: "Submit Dependencies"
run: |
${{ runner.temp }}/mix_dependency_submission_linux_amd64 \
--project-path="$PROJECT_PATH" \
--github-token="$GITHUB_TOKEN" \
${{ inputs.install-deps == 'true' && '--install-deps' || '' }} \
${{ inputs.ignore && '--ignore="$IGNORE"' || '' }}
run: >-
${{ runner.temp }}/mix_dependency_submission_${{ runner.os }}_${{ runner.arch }}
--project-path="$PROJECT_PATH"
--github-token="$GITHUB_TOKEN"
${{ inputs.install-deps == 'true' && '--install-deps' || '' }}
${{ inputs.ignore && '--ignore="$IGNORE"' || '' }}
shell: "bash"
env:
GITHUB_TOKEN: "${{ inputs.token }}"
Expand Down
9 changes: 7 additions & 2 deletions mix.exs
Original file line number Diff line number Diff line change
Expand Up @@ -48,8 +48,13 @@ defmodule MixDependencySubmission.MixProject do
steps: [:assemble, &Burrito.wrap/1],
burrito: [
targets: [
linux_amd64: [os: :linux, cpu: :x86_64],
linux_arm64: [os: :linux, cpu: :aarch64]
Linux_X64: [os: :linux, cpu: :x86_64],
Linux_ARM64: [os: :linux, cpu: :aarch64],
macOS_X64: [os: :darwin, cpu: :x86_64],
macOS_ARM64: [os: :darwin, cpu: :aarch64],
Windows_X64: [os: :windows, cpu: :x86_64]
# Not currently supported by Burrito
# Windows_ARM64: [os: :windows, cpu: :aarch64]
]
]
]
Expand Down
Loading