mirror of
https://github.com/veeso/termscp.git
synced 2026-07-28 18:41:11 +02:00
Arch publish workflow and build with docker
This commit is contained in:
20
.github/workflows/aur-pub.yml
vendored
Normal file
20
.github/workflows/aur-pub.yml
vendored
Normal file
@@ -0,0 +1,20 @@
|
|||||||
|
name: aur-pub
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
tags:
|
||||||
|
- "*"
|
||||||
|
jobs:
|
||||||
|
aur-publish:
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
|
||||||
|
- name: Publish AUR package
|
||||||
|
uses: KSXGitHub/github-actions-deploy-aur@2.2.3
|
||||||
|
with:
|
||||||
|
pkgname: my-awesome-package
|
||||||
|
pkgbuild: ./dist/pkgs/arch/PKGBUILD
|
||||||
|
commit_username: ${{ secrets.AUR_USERNAME }}
|
||||||
|
commit_email: ${{ secrets.AUR_EMAIL }}
|
||||||
|
ssh_private_key: ${{ secrets.AUR_KEY }}
|
||||||
|
commit_message: Update AUR package
|
||||||
|
ssh_keyscan_types: rsa,dsa,ecdsa,ed25519
|
||||||
1
.gitignore
vendored
1
.gitignore
vendored
@@ -14,5 +14,6 @@
|
|||||||
|
|
||||||
# End of https://www.gitignore.io/api/rust
|
# End of https://www.gitignore.io/api/rust
|
||||||
|
|
||||||
|
# Distributions
|
||||||
*.rpm
|
*.rpm
|
||||||
*.deb
|
*.deb
|
||||||
|
|||||||
19
dist/build/deploy.sh
vendored
19
dist/build/deploy.sh
vendored
@@ -7,25 +7,30 @@ fi
|
|||||||
|
|
||||||
VERSION=$1
|
VERSION=$1
|
||||||
|
|
||||||
mkdir -p pkgs/${VERSION}/
|
# Create pkgs directory
|
||||||
|
cd ..
|
||||||
|
PKGS_DIR=$(pwd)/pkgs
|
||||||
|
cd -
|
||||||
|
mkdir -p ${PKGS_DIR}/
|
||||||
# Build x86_64
|
# Build x86_64
|
||||||
cd x86_64/
|
cd x86_64/
|
||||||
docker build --tag termscp-${VERSION}-x86_64 .
|
docker build --tag termscp-${VERSION}-x86_64 .
|
||||||
# Create container and get deb, rpm
|
# Create container and get deb, rpm
|
||||||
cd -
|
cd -
|
||||||
mkdir -p pkgs/${VERSION}/deb/
|
mkdir -p ${PKGS_DIR}/deb/
|
||||||
mkdir -p pkgs/${VERSION}/rpm/
|
mkdir -p ${PKGS_DIR}/rpm/
|
||||||
CONTAINER_NAME=$(docker create termscp-${VERSION}-x86_64 termscp-${VERSION}-x86_64)
|
CONTAINER_NAME=$(docker create termscp-${VERSION}-x86_64 termscp-${VERSION}-x86_64)
|
||||||
docker cp ${CONTAINER_NAME}:/usr/src/termscp/target/debian/termscp_${VERSION}_amd64.deb pkgs/${VERSION}/deb/
|
docker cp ${CONTAINER_NAME}:/usr/src/termscp/target/debian/termscp_${VERSION}_amd64.deb ${PKGS_DIR}/deb/
|
||||||
docker cp ${CONTAINER_NAME}:/usr/src/termscp/target/release/rpmbuild/RPMS/x86_64/termscp-${VERSION}-1.x86_64.rpm pkgs/${VERSION}/rpm/
|
docker cp ${CONTAINER_NAME}:/usr/src/termscp/target/release/rpmbuild/RPMS/x86_64/termscp-${VERSION}-1.x86_64.rpm ${PKGS_DIR}/rpm/
|
||||||
# Build x86_64_archlinux
|
# Build x86_64_archlinux
|
||||||
cd x86_64_archlinux/
|
cd x86_64_archlinux/
|
||||||
docker build --tag termscp-${VERSION}-x86_64_archlinux .
|
docker build --tag termscp-${VERSION}-x86_64_archlinux .
|
||||||
# Create container and get AUR pkg
|
# Create container and get AUR pkg
|
||||||
cd -
|
cd -
|
||||||
mkdir -p pkgs/${VERSION}/arch/
|
mkdir -p ${PKGS_DIR}/arch/
|
||||||
CONTAINER_NAME=$(docker create termscp-${VERSION}-x86_64_archlinux termscp-${VERSION}-x86_64_archlinux)
|
CONTAINER_NAME=$(docker create termscp-${VERSION}-x86_64_archlinux termscp-${VERSION}-x86_64_archlinux)
|
||||||
docker cp ${CONTAINER_NAME}:/usr/src/termscp/termscp-${VERSION}-x86_64.tar.gz pkgs/arch/
|
docker cp ${CONTAINER_NAME}:/usr/src/termscp/termscp-${VERSION}-x86_64.tar.gz pkgs/arch/
|
||||||
docker cp ${CONTAINER_NAME}:/usr/src/termscp/PKGBUILD pkgs/${VERSION}/arch/
|
docker cp ${CONTAINER_NAME}:/usr/src/termscp/PKGBUILD ${PKGS_DIR}/arch/
|
||||||
|
docker cp ${CONTAINER_NAME}:/usr/src/termscp/.SRCINFO ${PKGS_DIR}/arch/
|
||||||
|
|
||||||
exit $?
|
exit $?
|
||||||
|
|||||||
10
dist/build/x86_64_archlinux/Dockerfile
vendored
10
dist/build/x86_64_archlinux/Dockerfile
vendored
@@ -6,7 +6,13 @@ RUN pacman -Syu --noconfirm \
|
|||||||
git \
|
git \
|
||||||
gcc \
|
gcc \
|
||||||
openssl \
|
openssl \
|
||||||
pkg-config
|
pkg-config \
|
||||||
|
sudo
|
||||||
|
# Create build user
|
||||||
|
RUN useradd build -m && \
|
||||||
|
passwd -d build && \
|
||||||
|
mkdir -p termscp && \
|
||||||
|
chown -R build.build termscp/
|
||||||
# Install rust
|
# Install rust
|
||||||
RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs > /tmp/rust.sh && \
|
RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs > /tmp/rust.sh && \
|
||||||
chmod +x /tmp/rust.sh && \
|
chmod +x /tmp/rust.sh && \
|
||||||
@@ -21,5 +27,7 @@ RUN source $HOME/.cargo/env && cargo install cargo-aur
|
|||||||
RUN source $HOME/.cargo/env && cargo build --release
|
RUN source $HOME/.cargo/env && cargo build --release
|
||||||
# Build pkgs
|
# Build pkgs
|
||||||
RUN source $HOME/.cargo/env && cargo aur
|
RUN source $HOME/.cargo/env && cargo aur
|
||||||
|
# Create SRCINFO
|
||||||
|
RUN chown -R build.build ../termscp/ && sudo -u build bash -c 'makepkg --printsrcinfo > .SRCINFO'
|
||||||
|
|
||||||
CMD ["sh"]
|
CMD ["sh"]
|
||||||
|
|||||||
Reference in New Issue
Block a user