Skip to content

Fix workspace manifest to use E2021 resolver. (#584) #642

Fix workspace manifest to use E2021 resolver. (#584)

Fix workspace manifest to use E2021 resolver. (#584) #642

Workflow file for this run

name: 'packages'
on:
- 'pull_request'
- 'push'
jobs:
packages:
runs-on: 'ubuntu-22.04'
strategy:
fail-fast: false
matrix:
container_os:
- 'centos:7'
- 'debian:10-slim'
- 'debian:11-slim'
- 'redhat/ubi8:latest'
- 'redhat/ubi9:latest'
- 'ubuntu:20.04'
- 'ubuntu:22.04'
arch:
- 'amd64'
- 'arm32v7'
- 'aarch64'
os:
- ''
exclude:
# CentOS 7 does not have functioning cross compilers. The Azure/iotedge repo builds CentOS 7 arm32v7 and aarch64 packages
# by running the arm32v7 / aarch64 containers under qemu. For now we don't care to replicate that here.
- container_os: 'centos:7'
arch: 'arm32v7'
- container_os: 'centos:7'
arch: 'aarch64'
# More investigation needed for RHEL 8 and 9. Excluding for now.
- container_os: 'redhat/ubi8:latest'
arch: 'arm32v7'
- container_os: 'redhat/ubi8:latest'
arch: 'aarch64'
- container_os: 'redhat/ubi9:latest'
arch: 'arm32v7'
- container_os: 'redhat/ubi9:latest'
arch: 'aarch64'
# Include this for mariner package builds. Mariner cannot be built on its own OS so we need an Ubuntu container.
include:
- container_os: 'ubuntu:20.04'
arch: 'amd64'
os: 'mariner:1'
- container_os: 'ubuntu:20.04'
arch: 'amd64'
os: 'mariner:2'
steps:
- uses: 'actions/checkout@v3'
with:
submodules: 'recursive'
- name: 'Run'
run: |
sudo df -h
sudo rm -rf /usr/local
sudo df -h
docker run --rm \
-v "$GITHUB_WORKSPACE:/src" \
-e "ARCH=$ARCH" \
-e "OS=$OS" \
-e "PACKAGE_VERSION=$PACKAGE_VERSION" \
-e "PACKAGE_RELEASE=$PACKAGE_RELEASE" \
--privileged \
"${{ matrix.container_os }}" \
'/src/ci/package.sh'
env:
ARCH: "${{ matrix.arch }}"
OS: "${{ matrix.os }}"
# PACKAGE_VERSION should end with '~dev' on the main branch.
PACKAGE_VERSION: '1.4.0~dev'
# PACKAGE_RELEASE should always be '1'.
PACKAGE_RELEASE: '1'
- name: 'Generate artifact properties'
id: 'generate-artifact-properties'
run: |
OS="${{ matrix.os }}"
if [ -z "$OS" ]; then
os_package="${{ matrix.container_os }}"
else
os_package="$OS"
fi
os_package="$(sed -e 's@[:/]@-@g' <<< "$os_package")"
echo "artifact-name=packages_${os_package}_${{ matrix.arch }}" >> $GITHUB_OUTPUT
- name: 'Upload'
uses: 'actions/upload-artifact@v3'
with:
name: "${{ steps.generate-artifact-properties.outputs.artifact-name }}"
path: 'packages'