use python 3.10 and only build image after tests succeeded

This commit is contained in:
Robert Resch 2022-04-08 23:02:13 +02:00
parent a3caf8ed04
commit 0738a30ad5
3 changed files with 43 additions and 51 deletions

View file

@ -2,14 +2,9 @@ name: CI
on: on:
push: push:
branches:
- dev
pull_request:
branches:
- dev
env: env:
DEFAULT_PYTHON: 3.9 DEFAULT_PYTHON: 3.10
jobs: jobs:
code-quality: code-quality:
@ -56,3 +51,43 @@ jobs:
uses: codecov/codecov-action@v2 uses: codecov/codecov-action@v2
with: with:
fail_ci_if_error: true fail_ci_if_error: true
build:
runs-on: ubuntu-latest
permissions:
packages: write
needs:
- tests
steps:
- name: checkout code
uses: actions/checkout@v2
- name: Get tag name
shell: bash
run: |
BRANCH=$(echo ${GITHUB_REF#refs/heads/});
if [ -z $BRANCH ]; then
exit 1;
elif [ $BRANCH == "master" ]; then
BRANCH=latest;
fi
echo "##[set-output name=tag;]$(echo $BRANCH)"
id: tag_name
# https://github.com/docker/setup-qemu-action
- name: Set up QEMU
uses: docker/setup-qemu-action@v1
# https://github.com/docker/setup-buildx-action
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v1
- name: Login to docker hub
run: echo "${{ secrets.GITHUB_TOKEN }}" | docker login ghcr.io -u ${{ github.actor }} --password-stdin
- name: Build the image
run: |
docker buildx build --push \
--tag ghcr.io/edenhaus/bumper:${{ steps.tag_name.outputs.tag }} \
--platform linux/amd64,linux/arm/v7,linux/arm64 .

View file

@ -1,43 +0,0 @@
name: Build docker images
on:
push:
jobs:
build:
runs-on: ubuntu-latest
permissions:
packages: write
steps:
- name: checkout code
uses: actions/checkout@v2
- name: Get tag name
shell: bash
run: |
BRANCH=$(echo ${GITHUB_REF#refs/heads/});
if [ -z $BRANCH ]; then
exit 1;
elif [ $BRANCH == "master" ]; then
BRANCH=latest;
fi
echo "##[set-output name=tag;]$(echo $BRANCH)"
id: tag_name
# https://github.com/docker/setup-qemu-action
- name: Set up QEMU
uses: docker/setup-qemu-action@v1
# https://github.com/docker/setup-buildx-action
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v1
- name: Login to docker hub
run: echo "${{ secrets.GITHUB_TOKEN }}" | docker login ghcr.io -u ${{ github.actor }} --password-stdin
- name: Build the image
run: |
docker buildx build --push \
--tag ghcr.io/edenhaus/bumper:${{ steps.tag_name.outputs.tag }} \
--platform linux/amd64,linux/arm/v7,linux/arm64 .

View file

@ -1,6 +1,6 @@
ARG ARCH=amd64 ARG ARCH=amd64
FROM $ARCH/python:3.9-alpine FROM $ARCH/python:3.10-alpine
EXPOSE 443 EXPOSE 443
EXPOSE 5223 EXPOSE 5223
@ -10,7 +10,7 @@ EXPOSE 8883
COPY requirements.txt /requirements.txt COPY requirements.txt /requirements.txt
# install required python packages # install required python packages
RUN pip3 install -r requirements.txt RUN apk add git && pip3 install -r requirements.txt
WORKDIR /bumper WORKDIR /bumper