52 lines
1.8 KiB
YAML
52 lines
1.8 KiB
YAML
on: [ push ]
|
|
jobs:
|
|
build:
|
|
runs-on: docker
|
|
container:
|
|
image: archlinux/archlinux:base-devel
|
|
steps:
|
|
- name: Prepare requirements
|
|
run: |
|
|
pacman -Syu --noconfirm
|
|
pacman -Sy --noconfirm nodejs npm git
|
|
pacman -Sy --noconfirm shellcheck rsync openssh coreutils
|
|
|
|
- uses: actions/checkout@v3
|
|
name: Clone
|
|
|
|
- name: Shellcheck
|
|
run: |
|
|
find usr/local/bin -type f -exec echo Testing {} \; -exec shellcheck {} \;
|
|
|
|
- name: DEBUG STEP
|
|
run: |
|
|
echo $KEY
|
|
echo "Base 64 stuff"
|
|
echo $KEY | base64 -d
|
|
env:
|
|
KEY: ${{ secrets.DEPLOY_SSH_KEY }}
|
|
|
|
- name: Build ArchLinux package
|
|
run: |
|
|
useradd -m build
|
|
cp -r ${{ github.workspace }}/_pkg/ /home/build/
|
|
chown -R build:build /home/build
|
|
cd /home/build/_pkg
|
|
sudo -u build makepkg -csf
|
|
sudo -u build repo-add repo-aur-myservermanager-com.db.tar.gz *.zst
|
|
cp *.zst ${{ github.workspace }}/_pkg/
|
|
cp *.tar.gz ${{ github.workspace }}/_pkg/
|
|
echo "Produced package and AUR contents"
|
|
ls -la ${{ github.workspace }}/_pkg/
|
|
|
|
- name: Synchronize to custom ArchLinux User Repository
|
|
env:
|
|
KEY: ${{ secrets.DEPLOY_SSH_KEY }}
|
|
USER: ${{ secrets.DEPLOY_SSH_USER }}
|
|
HOST: ${{ secrets.DEPLOY_SSH_HOST }}
|
|
run: |
|
|
mkdir -p ~/.ssh
|
|
which base64
|
|
echo $KEY | base64 -d >> ~/.ssh/id_rsa
|
|
chmod 600 ~/.ssh/id_rsa
|
|
rsync -az -zz -r --del -e 'ssh -p 2222 -o UserKnownHostsFile=/dev/null -o LogLevel=quiet -o StrictHostKeyChecking=no' ${{ github.workspace }}/_pkg/{*.zst,*.db.tar.gz,*.files.tar.gz} $USER@$HOST:/srv/http/myservermanager.com/htdocs/aur/
|