Skip to content

Deb repo

Deb repo #42

Workflow file for this run

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