Updated CHANGELOG.md #28
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: CI Pipeline | |
on: | |
push: | |
branches: | |
- '**' | |
pull_request: | |
branches: | |
- '**' | |
release: | |
types: | |
- created | |
jobs: | |
build: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v3 | |
- name: Set up PHP | |
uses: shivammathur/setup-php@v2 | |
with: | |
php-version: '8.3' | |
extensions: mbstring, ctype, common, zip | |
- name: Install dependencies | |
run: | | |
sudo apt-get update | |
sudo apt-get install -y git libpq-dev libzip-dev zip make wget gnupg | |
- name: Install Phive | |
run: | | |
wget -O phive.phar https://phar.io/releases/phive.phar | |
wget -O phive.phar.asc https://phar.io/releases/phive.phar.asc | |
gpg --keyserver hkps://keys.openpgp.org --recv-keys 0x9D8A98B29B2D5D79 | |
gpg --verify phive.phar.asc phive.phar | |
chmod +x phive.phar | |
sudo mv phive.phar /usr/local/bin/phive | |
- name: Install PHPAB | |
run: sudo phive install phpab --global --trust-gpg-keys 0x2A8299CE842DD38C | |
- name: Build project | |
run: make redist | |
- name: Find NCC build directory | |
id: find-ncc-dir | |
run: echo "NCC_DIR=$(find build/ -type d -name 'ncc_*' | head -n 1)" >> $GITHUB_ENV | |
- name: Upload NCC build directory | |
uses: actions/upload-artifact@v3 | |
with: | |
name: ncc-build | |
path: ${{ env.NCC_DIR }} | |
- name: Create redist.zip | |
run: zip -r redist.zip ${{ env.NCC_DIR }} | |
- name: Upload redist.zip | |
uses: actions/upload-artifact@v3 | |
with: | |
name: redist-zip | |
path: redist.zip | |
- name: Build Debian package | |
run: make deb | |
- name: Find Debian package | |
id: find-deb | |
run: echo "DEB_FILE=$(find build/ -type f -name '*.deb' | head -n 1)" >> $GITHUB_ENV | |
- name: Upload Debian package | |
uses: actions/upload-artifact@v3 | |
with: | |
name: ncc-deb | |
path: ${{ env.DEB_FILE }} | |
test-install: | |
runs-on: ubuntu-latest | |
needs: build | |
steps: | |
- name: Download NCC build directory | |
uses: actions/download-artifact@v3 | |
with: | |
name: ncc-build | |
path: build | |
- name: Set up PHP | |
uses: shivammathur/setup-php@v2 | |
with: | |
php-version: '8.3' | |
extensions: mbstring, ctype, common, zip | |
- name: Test NCC installation | |
run: | | |
ls -l build | |
sudo php build/INSTALL --auto | |
upload-release: | |
runs-on: ubuntu-latest | |
needs: build | |
if: github.event_name == 'release' && github.event.action == 'created' | |
permissions: write-all | |
steps: | |
- name: Download redist.zip | |
uses: actions/download-artifact@v3 | |
with: | |
name: redist-zip | |
path: . | |
- name: Download Debian package | |
uses: actions/download-artifact@v3 | |
with: | |
name: ncc-deb | |
path: . | |
- name: Set DEB_FILE environment variable | |
run: echo "DEB_FILE=$(find . -type f -name '*.deb' | head -n 1)" >> $GITHUB_ENV | |
- name: Upload redist.zip to release | |
uses: softprops/action-gh-release@v1 | |
with: | |
files: redist.zip | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
- name: Upload ncc.deb to release | |
uses: softprops/action-gh-release@v1 | |
with: | |
files: ${{ env.DEB_FILE }} | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |