Skip to content

Add hidden gcptrace flag #850

Add hidden gcptrace flag

Add hidden gcptrace flag #850

name: Test melange test command
on:
push:
branches: [ "main" ]
pull_request:
branches: [ "main" ]
jobs:
build-melange:
name: Build melange and add to artifact cache
runs-on: ubuntu-latest
permissions:
contents: read
steps:
- uses: step-security/harden-runner@f086349bfa2bd1361f7909c78558e816508cdc10 # v2.8.0
with:
egress-policy: audit
- uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
- uses: actions/setup-go@cdcb36043654635271a94b9a6d1392de5bb323a7 # v5.0.1
with:
go-version: '1.21'
check-latest: true
- name: build
run: |
make melange
- uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3
with:
name: melange-${{ github.run_id }}
path: ${{ github.workspace }}/melange
retention-days: 1
test-packages:
name: Test packages
needs:
- build-melange
# TODO: Set up a larger runner for this.
runs-on: ubuntu-latest
permissions:
contents: read
# This is a list of packages which we want to test against.
# Feel free to add additional packages to this matrix which exercise
# Melange `test` in new ways (e.g. new pipelines, etc.)
# Each test file is of the form <package-name>-test.yaml and gets
# constructed from the package name.
strategy:
fail-fast: false
matrix:
package:
- php-8.2-msgpack
- py3-pandas
- numpy
# The ones with -nopkg are packages which do not specify test
# packages, and they are added to the test environment by using flags.
# They make sure the flag `--test-package-append` works.
# We also do not specify the test package in the test file, so that
# we test that the main package gets correctly pulled from the file.
- php-8.2-msgpack-nopkg
- py3-pandas-nopkg
steps:
- uses: step-security/harden-runner@f086349bfa2bd1361f7909c78558e816508cdc10 # v2.8.0
with:
egress-policy: audit
# Grab the melange we uploaded above, and install it.
- uses: actions/download-artifact@65a9edc5881444af0b9093a5e628f2fe47ea3b2e # v4.1.7
with:
name: melange-${{ github.run_id }}
path: ${{ github.workspace }}/.melange-dir
run-id: ${{ github.run_id }}
- run: |
sudo mv ${{ github.workspace }}/.melange-dir/melange /usr/bin/melange
sudo chmod a+x /usr/bin/melange
melange version
- run: |
sudo apt-get -y install bubblewrap
# Make sure we have our tests files here.
- uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
- name: Run without additional test packages.
# Any package ending with -nopkg will fail if we do not add the
# extra test packages to it, so test in a separate leg.
if: ${{ ! endsWith( matrix.package, '-nopkg' ) }}
run: |
testfile="${{ matrix.package }}-test.yaml"
echo "Testing $testfile"
melange test --arch x86_64 --source-dir ./e2e-tests/test-fixtures \
./e2e-tests/$testfile ${{ matrix.package }} \
--repository-append https://packages.wolfi.dev/os \
--keyring-append https://packages.wolfi.dev/os/wolfi-signing.rsa.pub
- name: Run with additional test packages (--test-package-append).
# Any package ending with -nopkg will need to have test packages
# added to it. Note that we do not add a package to test either, pull
# that from the test file.
if: endsWith( matrix.package, '-nopkg' )
run: |
testfile="${{ matrix.package }}-test.yaml"
echo "Testing $testfile"
melange test --arch x86_64 --source-dir ./e2e-tests/test-fixtures \
./e2e-tests/$testfile \
--repository-append https://packages.wolfi.dev/os \
--keyring-append https://packages.wolfi.dev/os/wolfi-signing.rsa.pub \
--test-package-append busybox \
--test-package-append python-3