Skip to content
This repository has been archived by the owner on Dec 7, 2023. It is now read-only.

Add OS image release workflow #717

Merged
merged 2 commits into from
Nov 4, 2020
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
38 changes: 38 additions & 0 deletions .github/workflows/release-os-images.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
name: Release OS images

on:
workflow_dispatch:
# Enable manual trigger of this action.
inputs:
user:
description: Container registry user.
default: weaveworks
required: true
version:
description: ignite version used for image tags.
required: true

env:
DOCKER_USER: ${{ github.event.inputs.user }}
VERSION: ${{ github.event.inputs.version }}

defaults:
run:
working-directory: images

jobs:
image-build-push:
runs-on: ubuntu-latest
strategy:
matrix:
what: [alpine, amazon-kernel, amazonlinux, centos, kubeadm, opensuse, ubuntu]
steps:
- uses: actions/checkout@v2
- name: Login to container registry
uses: docker/#-action@v1
with:
registry: docker.io
username: ${{ secrets.CR_USER }}
password: ${{ secrets.CR_PAT }}
- run: make OP=build build-${{ matrix.what }}
- run: make OP=push build-${{ matrix.what }}
31 changes: 25 additions & 6 deletions images/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -141,18 +141,37 @@ push-all: build-all
$(MAKE) OP=push build-all


build-all:
build-all: build-alpine build-amazon-kernel build-amazonlinux build-centos build-kubeadm build-opensuse build-ubuntu

build-alpine:
ifeq ($(OP),build)
pushd alpine; \
${MAKE} alpine.tar; \
popd;
endif
$(MAKE) ${OP} WHAT=alpine

build-amazon-kernel:
$(MAKE) ${OP} WHAT=amazon-kernel

build-amazonlinux:
$(MAKE) ${OP} WHAT=amazonlinux RELEASE=2 IS_LATEST=true
$(MAKE) ${OP} WHAT=alpine

build-centos:
$(MAKE) ${OP} WHAT=centos RELEASE=7
$(MAKE) ${OP} WHAT=centos RELEASE=8 IS_LATEST=true

build-kubeadm:
$(MAKE) ${OP} WHAT=kubeadm RELEASE=v1.18.3 BINARY_REF=release/stable-1.18 IS_LATEST=true IS_MANIFEST_LIST=1 GOARCH=arm64
$(MAKE) ${OP} WHAT=kubeadm RELEASE=v1.18.3 BINARY_REF=release/stable-1.18 IS_LATEST=true IS_MANIFEST_LIST=1 GOARCH=amd64

build-opensuse:
$(MAKE) ${OP} WHAT=opensuse RELEASE=leap IS_LATEST=true
$(MAKE) ${OP} WHAT=opensuse RELEASE=tumbleweed

build-ubuntu:
$(MAKE) ${OP} WHAT=ubuntu RELEASE=16.04 IS_MANIFEST_LIST=0
$(MAKE) ${OP} WHAT=ubuntu RELEASE=18.04 IS_MANIFEST_LIST=1 GOARCH=arm64
$(MAKE) ${OP} WHAT=ubuntu RELEASE=18.04 IS_MANIFEST_LIST=1 GOARCH=amd64
$(MAKE) ${OP} WHAT=ubuntu RELEASE=20.04 IS_LATEST=true IS_MANIFEST_LIST=1 GOARCH=arm64
$(MAKE) ${OP} WHAT=ubuntu RELEASE=20.04 IS_LATEST=true IS_MANIFEST_LIST=1 GOARCH=amd64
$(MAKE) ${OP} WHAT=centos RELEASE=7
$(MAKE) ${OP} WHAT=centos RELEASE=8 IS_LATEST=true
$(MAKE) ${OP} WHAT=kubeadm RELEASE=v1.18.3 BINARY_REF=release/stable-1.18 IS_LATEST=true IS_MANIFEST_LIST=1 GOARCH=arm64
$(MAKE) ${OP} WHAT=kubeadm RELEASE=v1.18.3 BINARY_REF=release/stable-1.18 IS_LATEST=true IS_MANIFEST_LIST=1 GOARCH=amd64