Skip to content

Commit

Permalink
[skip-ci] machine images
Browse files Browse the repository at this point in the history
[NO NEW TESTS NEEDED]

Signed-off-by: Lokesh Mandvekar <[email protected]>
  • Loading branch information
lsm5 committed Feb 7, 2024
1 parent caee76e commit 496a090
Show file tree
Hide file tree
Showing 3 changed files with 84 additions and 1 deletion.
13 changes: 12 additions & 1 deletion .github/workflows/fcos-podman-next-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,8 @@ on:
- cron: '0 0 * * *'

env:
IMAGE_NAME: fcos
FCOS_IMAGE_NAME: fcos
MACHINE_IMAGE_NAME: machine-images
# IMAGE_ARCHS has to be comma separated
IMAGE_ARCHS: amd64, arm64
IMAGE_REGISTRY: quay.io/podman
Expand All @@ -32,6 +33,10 @@ jobs:
run: |
pip3 install git+https://github.com/packit/wait-for-copr.git@main
- name: Set up cosa
run: |
# TBD
- name: Check out code
uses: actions/checkout@v4

Expand Down Expand Up @@ -63,6 +68,12 @@ jobs:
org.opencontainers.image.description=FCOS image with rpms from rhcontainerbot/podman-next copr
org.opencontainers.image.revision=${{ github.sha }}
- name: Build Machine images
run: |
# TBD

- name: Add Machine images to Manifest
# TBD

- name: Echo Outputs
run: |
Expand Down
44 changes: 44 additions & 0 deletions .github/workflows/machine-images.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
name: MACHINE IMAGE TRIAL

on:
pull_request:
branches:
- main
# Run everyday at midnight and pull the latest packages from the copr
schedule:
- cron: '0 0 * * *'

env:
MACHINE_IMAGE_NAME: machine-images
# IMAGE_ARCHS has to be comma separated
IMAGE_ARCHS: amd64, arm64
IMAGE_REGISTRY: quay.io/podman
COPR_OWNER: rhcontainerbot
COPR_PROJECT: podman-next

jobs:
fcos-podman-next-image-build:
runs-on: ubuntu-latest

steps:
- name: Install qemu dependency
run: |
sudo apt update
sudo apt -y install qemu-user-static
- name: Check out code
uses: actions/checkout@v4

- name: Set up cosa
run: |
podman pull quay.io/coreos-assembler/coreos-assembler
mkdir fcos
cd fcos
cat ./contrib/podman-next/machine-image/cosa-snippet >> ~/.bashrc
- name: Build Machine images
run: |
cosa shell
# cosa init https://github.com/coreos/fedora-coreos-config
#cosa fetch
#cosa build
28 changes: 28 additions & 0 deletions contrib/podman-next/fcos-podmanimage/cosa-snippet
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@

cosa() {
env | grep COREOS_ASSEMBLER
local -r COREOS_ASSEMBLER_CONTAINER_LATEST="quay.io/coreos-assembler/coreos-assembler:latest"
if [[ -z ${COREOS_ASSEMBLER_CONTAINER} ]] && $(podman image exists ${COREOS_ASSEMBLER_CONTAINER_LATEST}); then
local -r cosa_build_date_str="$(podman inspect -f "{{.Created}}" ${COREOS_ASSEMBLER_CONTAINER_LATEST} | awk '{print $1}')"
local -r cosa_build_date="$(date -d ${cosa_build_date_str} +%s)"
if [[ $(date +%s) -ge $((cosa_build_date + 60*60*24*7)) ]] ; then
echo -e "\e[0;33m----" >&2
echo "The COSA container image is more that a week old and likely outdated." >&2
echo "You should pull the latest version with:" >&2
echo "podman pull ${COREOS_ASSEMBLER_CONTAINER_LATEST}" >&2
echo -e "----\e[0m" >&2
sleep 10
fi
fi
set -x
podman run --rm -ti --security-opt=label=disable --privileged \
--uidmap=1000:0:1 --uidmap=0:1:1000 --uidmap=1001:1001:64536 \
-v=${PWD}:/srv/ --device=/dev/kvm --device=/dev/fuse \
--tmpfs=/tmp -v=/var/tmp:/var/tmp --name=cosa \
${COREOS_ASSEMBLER_CONFIG_GIT:+-v=$COREOS_ASSEMBLER_CONFIG_GIT:/srv/src/config/:ro} \
${COREOS_ASSEMBLER_GIT:+-v=$COREOS_ASSEMBLER_GIT/src/:/usr/lib/coreos-assembler/:ro} \
${COREOS_ASSEMBLER_ADD_CERTS:+-v=/etc/pki/ca-trust:/etc/pki/ca-trust:ro} \
${COREOS_ASSEMBLER_CONTAINER_RUNTIME_ARGS} \
${COREOS_ASSEMBLER_CONTAINER:-$COREOS_ASSEMBLER_CONTAINER_LATEST} "$@"
rc=$?; set +x; return $rc
}

0 comments on commit 496a090

Please sign in to comment.