Skip to content

ci: add workflow to build all packages #7

ci: add workflow to build all packages

ci: add workflow to build all packages #7

Workflow file for this run

name: Build All
on:
workflow_dispatch:
push:
jobs:
build:
runs-on: ubuntu-latest
container:
image: ghcr.io/wolfi-dev/sdk:latest
options: |
--cap-add NET_ADMIN --cap-add SYS_ADMIN --device /dev/fuse --security-opt seccomp=unconfined --security-opt apparmor:unconfined
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Install rclone
run: |
cd /tmp
curl -o rclone.zip -L https://downloads.rclone.org/rclone-current-linux-amd64.zip
unzip rclone.zip
cp rclone*/rclone /usr/bin/
rm -rf rclone*
- name: Rclone Setup
run: |
mkdir -p $HOME/.config/rclone
cat <<EOF > $HOME/.config/rclone/rclone.conf
[Packages]
type = s3
provider = Cloudflare
env_auth = true
region = auto
endpoint = https://963ff7fb9c523564b5f3a398ab39d488.r2.cloudflarestorage.com/wolfi-php
EOF
- name: Create packages directory
run: mkdir -p packages
- name: Mount packages
env:
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
run: |
rclone mount Packages: packages --daemon
- name: Touch packages
run: touch packages/.keep
- name: Get signing key
run: |
echo "${{ secrets.SIGNING_KEY }}" | base64 -d > melange.rsa
- name: Build packages
run: melange build --arch x86_64 -r https://packages.wolfi.dev/os -k https://packages.wolfi.dev/os/wolfi-signing.rsa.pub --signing-key melange.rsa *.yaml