Deb repo #42
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Install app DEB on Ubuntu | |
on: | |
push: | |
branches: [ master ] | |
pull_request: | |
branches: [ master ] | |
jobs: | |
build: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Install deps | |
run: sudo apt-get install -y --no-install-recommends build-essential binutils gpg apt-utils rsync sudo | |
- name: Create gpg keychain for manage-internal-deb-repo | |
run: gpg --batch --passphrase '' --quick-gen-key INTERNAL_TEST_USER default default | |
- name: Create setup dir for manage-internal-deb-repo | |
run: mkdir -p "$HOME/.config"; | |
- name: Pre setup manage-internal-deb-repo | |
run: sh -c 'echo "$HOME/.debrepo" > $HOME/.config/.debrepo' | |
- name: Create internal repo dir in root side | |
run: sudo mkdir -p "/opt/internal-repo"; | |
- name: Pre setup manage-internal-deb-repo in root side | |
run: sh -c 'echo "/opt/internal-repo" > $HOME/.config/.debrepo-rootdeploy' | |
- name: Install make-deb deps | |
run: sudo apt-get install -y --no-install-recommends lintian debhelper dh-make devscripts pandoc rpm rpmlint | |
- name: Prepare app DEB | |
run: ./make-deb.bash | |
- name: Put app DEB to internal repo with manage-internal-deb-repo | |
run: ./src/usr/bin/manage-internal-deb-repo linux-springboot-packager-*.deb | |
- name: Declare internal repo to APT | |
run: sudo echo deb [signed-by=/opt/internal-repo/pubkey.asc arch=all] file:///opt/internal-repo stable main | sudo tee /etc/apt/sources.list.d/internal-deb.list > /dev/null | |
- name: Update APT | |
run: sudo apt-get update | |
- name: Install app | |
run: sudo apt-get install -y --no-install-recommends linux-springboot-packager | |
- name: Set up JDK 17 | |
uses: actions/setup-java@v3 | |
with: | |
java-version: 17 | |
distribution: 'temurin' | |
cache: 'maven' | |
- name: Install deps for internal test | |
run: sudo apt-get install -y --no-install-recommends man xmlstarlet git wget tar nsis | |
- name: Prepare temp dir for internal tests | |
run: mkdir -p test/temp | |
- name: Run internal make DEB test | |
run: make-springboot-deb test/demospringboot test/temp | |
- name: Run internal make DEB CLI test | |
run: make-springboot-deb test/democlispringboot test/temp | |
- name: Publish locally internal DEB CLI test | |
run: manage-internal-deb-repo test/temp/democlispringboot-0.0.1-SNAPSHOT.deb | |
- name: Update APT | |
run: sudo apt-get update | |
- name: Install internal DEB CLI test | |
run: sudo apt-get install -y --no-install-recommends democlispringboot | |
- name: Run internal DEB CLI test | |
run: democlispringboot A B | |
- name: Run internal make RPM test | |
run: make-springboot-rpm test/demospringboot test/temp | |
- name: Run internal make RPM CLI test | |
run: make-springboot-rpm test/democlispringboot test/temp | |
- name: Prepare fake WinSW | |
run: sudo sh -c 'echo "Empty" > /usr/lib/linux-springboot-packager/templates/WinSW-x64.exe' | |
- name: Run internal make EXE test | |
run: make-springboot-exe test/demospringboot test/temp |