Update Dockerfile #110
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Package OVIS-LDMS SlingShot Switch Sampler for Debian ARM64 | |
on: | |
push: | |
branches: [ "debian", "tidy" ] | |
pull_request: | |
branches: [ "debian" ] | |
# Allows you to run this workflow manually from the Actions tab | |
workflow_dispatch: | |
inputs: | |
logLevel: | |
description: 'Log level' | |
required: true | |
default: 'warning' | |
type: choice | |
options: | |
- info | |
- warning | |
- debug | |
print_tags: | |
description: 'True to print to STDOUT' | |
required: true | |
type: boolean | |
tags: | |
description: 'Test scenario tags' | |
required: true | |
type: string | |
environment: | |
description: 'Environment to run tests against' | |
type: environment | |
required: true | |
jobs: | |
build: | |
runs-on: ubuntu-20.04 | |
env: | |
DOCKER_REGISTRY: docker.io | |
DOCKER_IMAGE: jkgreen76/ldms-slingshot-switch-sampler | |
DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }} | |
DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }} | |
GPG_USERNAME: ${{ secrets.GPG_USERNAME }} | |
GPG_EMAIL: ${{ secrets.GPG_EMAIL }} | |
GPG_PASSWORD: ${{ secrets.GPG_PASSWORD }} | |
GPG_PUBLIC_KEY: ${{ secrets.GPG_PUBLIC_KEY }} | |
GPG_PRIVATE_KEY: ${{ secrets.GPG_PRIVATE_KEY }} | |
DOCKER_TARGET_PLATFORM: 'linux/arm64' | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v4 | |
- name: Set up QEMU | |
uses: docker/setup-qemu-action@v3 | |
with: | |
platforms: 'linux/arm64' | |
- name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@v3 | |
with: | |
version: latest | |
- name: Prepare | |
if: success() | |
id: prepare | |
run: | | |
echo "docker_image=${DOCKER_REGISTRY}/${DOCKER_IMAGE}" >> "$GITHUB_OUTPUT" | |
echo "buildx_version=${GITHUB_RUN_NUMBER}" >> "$GITHUB_OUTPUT" | |
echo "docker_platform=${DOCKER_TARGET_PLATFORM}" >> "$GITHUB_OUTPUT" | |
echo ":white_check_mark: Prepare Step Successful" >> $GITHUB_STEP_SUMMARY | |
- name: Docker Login | |
if: success() | |
run: | | |
echo "${DOCKER_PASSWORD}" | docker login ${DOCKER_REGISTRY} --username "${DOCKER_USERNAME}" --password-stdin | |
echo ":white_check_mark: Docker Login Successful" >> $GITHUB_STEP_SUMMARY | |
- name: Build Debian Package | |
if: success() | |
run: | | |
docker buildx build \ | |
--platform ${{ steps.prepare.outputs.docker_platform }} \ | |
--tag ${{ steps.prepare.outputs.docker_image }} \ | |
--provenance false \ | |
--sbom false \ | |
--file ./Dockerfile \ | |
--output "type=image,push=true" . | |
echo ":white_check_mark: ovis-ldms_4.4.3-1_arm.deb created!" >> $GITHUB_STEP_SUMMARY | |
- name: Stage artifacts to bindmount | |
if: success() | |
run: | | |
mkdir -p ldms-slingshot-switch-sampler | |
sudo chmod -R 777 $(pwd)/ldms-slingshot-switch-sampler | |
docker run -i \ | |
-v $(pwd)/ldms-slingshot-switch-sampler:/ldms-slingshot-switch-sampler:rw ${DOCKER_IMAGE} \ | |
cp -Rf /ovis-ldms-debian-package/ovis-ldms_4.4.3-1_arm64.deb /ldms-slingshot-switch-sampler/. | |
echo ":white_check_mark: Artifacts staged to bindmount" >> $GITHUB_STEP_SUMMARY | |
- name: list directory contents of ldms-slingshot-switch-sampler | |
if: success() | |
run: | | |
ls -al ldms-slingshot-switch-sampler | |
# - name: Build Test Server | |
# if: success() | |
# run: | | |
# docker buildx build \ | |
# --platform ${{ steps.prepare.outputs.docker_platform }} \ | |
# --tag arm64-ubuntu-apt-webserver \ | |
# --provenance false \ | |
# --sbom false \ | |
# --file ./test-apt-server/Dockerfile \ | |
# --output "type=image,push=true" . | |
# echo ":white_check_mark: ### ubuntu-arm64-apt-webserver created!" >> $GITHUB_STEP_SUMMARY | |
# - name: Start Webserver | |
# if: success() | |
# users: hoverkraft-tech/compose-action@v2.0.1 | |
# command -v python3 || apt-get update && apt-get install -y python3 | |
# mkdir /www | |
# cp -Rf /ovis-ldms/apt-repo /www/apt-repo | |
# python3 -m "http.server" | |
# - name: Test APT repo | |
- name: Upload artifact | |
if: success() | |
uses: actions/upload-pages-artifact@v3.0.1 | |
with: | |
name: ldms-slingshot-switch-sampler | |
path: ldms-slingshot-switch-sampler | |
- name: Artifact Upload | |
if: success() | |
run: | | |
echo "### ovis-ldms_4.4.3-1_arm.deb artifact uploaded! :rocket:" >> $GITHUB_STEP_SUMMARY |