Skip to content

Commit

Permalink
Merge pull request #163 from walkero-gr/actions-cicd
Browse files Browse the repository at this point in the history
Github Actions
  • Loading branch information
afxgroup authored Jan 16, 2024
2 parents e9e1a01 + b66a5ab commit 142d3f8
Show file tree
Hide file tree
Showing 5 changed files with 107 additions and 14 deletions.
53 changes: 46 additions & 7 deletions .github/workflows/makeRelease.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
name: Make a new release
on:
release:
branches:
- master
types:
- published

Expand All @@ -14,16 +16,19 @@ jobs:
- '${{ github.workspace }}:/opt/code'
steps:
- name: Pull code
uses: actions/checkout@v2
uses: actions/checkout@v4
- name: Compile clib4
run: |
cd /opt/code && \
make -j1 -f GNUmakefile.os4 OS=os4 SHARED=no
- name: Create the release archive
- name: Create the LHA release archive
run: |
make -f GNUmakefile.os4 release && \
mv clib4.lha clib4-${{ github.event.release.tag_name }}.lha
- name: Upload Release Asset
- name: Create the DEB release archive
run: |
make -f GNUmakefile.os4 dpkg DPKG_LIB=clib4-${{ github.event.release.tag_name }}_amd64
- name: Upload LHA release file in GitHub
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
Expand All @@ -32,7 +37,41 @@ jobs:
asset_path: /opt/code/clib4-${{ github.event.release.tag_name }}.lha
asset_name: clib4-${{ github.event.release.tag_name }}.lha
asset_content_type: application/x-lzh-compressed
# - name: Release on OS4Depot
# - name: Release on Aminet
# - name: Prepare Ubuntu apt packages
# - name: Release on Ubuntu apt server
- name: Upload DEB release file in GitHub
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ github.event.release.upload_url }}
asset_path: /opt/code/clib4-${{ github.event.release.tag_name }}_amd64.deb
asset_name: clib4-${{ github.event.release.tag_name }}_amd64.deb
asset_content_type: application/vnd.debian.binary-pac
- name: Upload DEB release file to the server
uses: kostya-ten/ssh-server-deploy@v4
with:
host: ${{ secrets.DEBSERVER_HOST }}
port: ${{ secrets.DEBSERVER_PORT }}
username: ${{ secrets.DEBSERVER_USERNAME }}
private_key: ${{ secrets.DEBSERVER_PRIVATE_KEY }}
scp_source: clib4-${{ github.event.release.tag_name }}_amd64.deb
scp_target: /opt/amigarepo/ubuntu/pool/main
before_script: |
rm /opt/amigarepo/ubuntu/pool/main/clib4*.deb
after_script: |
/root/regenerate-packages.sh
- name: Prepare OS4Depot release
run: |
mkdir os4depot-release
cp clib4-${{ github.event.release.tag_name }}.lha ./os4depot-release/clib4.lha
cp ./os4depot.readme ./os4depot-release/clib4_lha.readme
sed -i "s/VERSION_TAG/${{ github.event.release.tag_name }}/" ./os4depot-release/os4depot.readme
sed -i "s/OS4DEPOT_PASSPHRASE/${{ secrets.OS4DEPOT_PASSPHRASE }}/" ./os4depot-release/os4depot.readme
- name: Release on OS4Depot
uses: SamKirkland/FTP-Deploy-Action@v4.3.4
with:
server: os4depot.net
port: 21
username: ftp
password:
server-dir: ./upload
local-dir: /opt/code/os4depot-release/
26 changes: 26 additions & 0 deletions .github/workflows/mergeMaster.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
name: Merge into master build
on:
pull_request:
branches:
- master
types:
- closed

jobs:
run_if_merged:
if: github.event.pull_request.merged == true
name: Build latest code
runs-on: ubuntu-latest
container:
image: walkero/amigagccondocker:os4-gcc11-exp
volumes:
- '${{ github.workspace }}:/opt/code'
steps:
- name: Pull code
uses: actions/checkout@v4
- name: Compile clib4
run: |
cd /opt/code && \
make -j1 -f GNUmakefile.os4 OS=os4 SHARED=no
- name: Create the release archive
run: make -f GNUmakefile.os4 release
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
name: Build with Docker
name: Pull request build
on:
push:
pull_request:
branches:
- master
- actions-cicd
pull_request:
workflow_dispatch:
types:
- opened
- reopened

jobs:
run:
Expand All @@ -17,7 +17,7 @@ jobs:
- '${{ github.workspace }}:/opt/code'
steps:
- name: Pull code
uses: actions/checkout@v2
uses: actions/checkout@v4
- name: Compile clib4
run: |
cd /opt/code && \
Expand Down
2 changes: 1 addition & 1 deletion GNUmakefile.os4
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@ LIB_ROOT ?= $(shell pwd)
LIB_DIR = $(LIB_ROOT)/library
BUILD_DIR = $(LIB_ROOT)/build
OUTPUT_LIB = $(BUILD_DIR)/lib
DPKG_LIB = clib4_1.0_amd64
DPKG_LIB ?= clib4_1.0_amd64

##############################################################################

Expand Down
28 changes: 28 additions & 0 deletions os4depot.readme
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
name: clib4
description: clib4 library
version: VERSION_TAG
author: Andrea Palmatè
submitter: Andrea Palmatè
email: andrea@amigasoft.net
url: https://github.com/AmigaLabs/clib4
category: development/library/misc
replaces: development/library/misc/clib4.lha
requirements: adtools
license: BSD
minosversion: 4.1
distribute: yes
passphrase: OS4DEPOT_PASSPHRASE
hend:
This is a fork of official clib2 present in adtools. The point of this
library is to make it Amiga OS4 only to maintain it easily and add all the
missing clib2 features that are difficult to add also on classic Amigas.
Classic Amigas has also ixemul that is the most complete, POSIX compliant,
library we have. It is a useless share code that most probably no one will
use. The goal is to try to make it POSIX compliant and fix also all the C++
problems we have with newer compilers. All warnings (except really few ones)
produced by GCC 10 and above are now gone.

All deprecated OS4 functions are replaced by modern OS4 one.

If you find any issue, please let us know at:
https://github.com/AmigaLabs/clib4/issues

0 comments on commit 142d3f8

Please sign in to comment.