Skip to content

WIP FreeBSD build

WIP FreeBSD build #1

Workflow file for this run

name: Build Docker image with multi-arch

Check failure on line 1 in .github/workflows/build.yml

View workflow run for this annotation

GitHub Actions / .github/workflows/build.yml

Invalid workflow file

(Line: 51, Col: 9): Unexpected value 'run'
on:
# schedule:
# - cron: '15 */8 * * *'
repository_dispatch:
types:
- build
workflow_dispatch:
inputs:
ruby_version:
required: true
default: master
description: '"master" or version number ("3.1.2")'
env:
ruby_version: ${{ github.event.inputs.ruby_version || github.event.client_payload.ruby_version || 'master' }}
jobs:
build:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
freebsd_version:
- "15.0"
- "14.3"
steps:
- uses: actions/checkout@v5
- name: Store parameters to environmental variables
run: |
echo "RUBY_VERSION=${{ github.event.inputs.RUBY_VERSION || github.event.client_payload.ruby_version }}" >> $GITHUB_ENV
echo "ARCH=${{ github.event.inputs.ARCH || github.event.client_payload.arch }}" >> $GITHUB_ENV
echo "LATEST=${{ github.event.inputs.LATEST || github.event.client_payload.latest }}" >> $GITHUB_ENV
- name: Show parameters
run: |
echo $RUBY_VERSION
echo $ARCH
echo $LATEST
- name: Build image
uses: cross-platform-actions/action@master
with:
operating_system: freebsd
version: ${{ matrix.freebsd_version }}
run: |
sudo pkg install -y podman ruby
alias docker=podman
sudo cp /usr/local/etc/containers/pf.conf.sample /etc/pf.conf
sudo sed -i "" "s/ix0/vtnet0/g"
sudo service pf enable
sudo service pf start
sudo service podman enable
sudo service podman start
sudo mount -t fdescfs fdesc /dev/fd
rake docker:build arch=${{ env.ARCH }} ruby_version=${{ env.RUBY_VERSION }} freebsd_version=${{ matrix.freebsd_version }} latest_tag=${{ env.LATEST }}
# - name: Check image
# run: |
# docker images
#
# if [[ "${{ env.ARCH }}" != "amd64" ]]; then
# ARCH_SUFFIX=-${{ env.ARCH }}
# fi
# docker run ghcr.io/labtec/ruby:${{ env.RUBY_VERSION }}-${{ matrix.freebsd_version }}${ARCH_SUFFIX} ruby -v
#
# - name: Login to DockerHub
# uses: docker/login-action@v3
# with:
# username: ${{ secrets.DOCKER_USER }}
# password: ${{ secrets.DOCKER_PASS }}
#
# - name: Push images to DockerHub
# run: docker push ghcr.io/labtec/ruby --all-tags
#
# - name: Renaming images
# run: |
# docker images ghcr.io/labtec/ruby --format='docker tag {{.Repository}}:{{.Tag}} ghcr.io/ruby/ruby:{{.Tag}}' | sh -ex
#
# - name: Login GitHub Container Registry
# uses: docker/login-action@v3
# with:
# registry: ghcr.io
# username: ${{ secrets.GHCR_USER }}
# password: ${{ secrets.GHCR_ACCESS_TOKEN }}
#
# - name: Push image to GitHub Container Registry
# run: docker push ghcr.io/${{ github.repository_owner }}/ruby --all-tags