Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Setup Unit Testing and Continuous Delivery #11

Merged
merged 107 commits into from
Aug 17, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
107 commits
Select commit Hold shift + click to select a range
bd36db0
wf
tumble1999 Aug 15, 2021
a2b5553
ci
tumble1999 Aug 15, 2021
6f8fef7
shell
tumble1999 Aug 15, 2021
3c432dc
var
tumble1999 Aug 15, 2021
179f677
path
tumble1999 Aug 15, 2021
5c8da83
runs
tumble1999 Aug 15, 2021
95ca8b7
ls
tumble1999 Aug 15, 2021
0821119
ls
tumble1999 Aug 15, 2021
8b9e173
ls
tumble1999 Aug 15, 2021
c924cce
jobs
tumble1999 Aug 15, 2021
92ea32a
bash
tumble1999 Aug 15, 2021
8ab80d1
create-deb
tumble1999 Aug 15, 2021
0b782b6
uses
tumble1999 Aug 15, 2021
01a7b7a
uses
tumble1999 Aug 15, 2021
f029791
new step
tumble1999 Aug 15, 2021
65e0a33
actions
tumble1999 Aug 15, 2021
a15ed3a
name
tumble1999 Aug 15, 2021
bcf8797
create-deb
tumble1999 Aug 15, 2021
5a1e8f3
hmm
tumble1999 Aug 15, 2021
cef31a8
CI
tumble1999 Aug 15, 2021
feded89
formatting
tumble1999 Aug 15, 2021
9902ef8
jobs
tumble1999 Aug 15, 2021
6db347a
dependacies
tumble1999 Aug 15, 2021
33ba203
arch and ppa
tumble1999 Aug 15, 2021
a490551
mp
tumble1999 Aug 15, 2021
e816869
fix url
tumble1999 Aug 15, 2021
105f847
change of src dir
tumble1999 Aug 16, 2021
d9d50c6
no cd
tumble1999 Aug 16, 2021
ec50643
bring back clone
tumble1999 Aug 16, 2021
0668bae
ii guess i have to tag
tumble1999 Aug 16, 2021
3bfc8d3
hmm
tumble1999 Aug 16, 2021
48cca10
api token
tumble1999 Aug 16, 2021
ffd5bdb
username
tumble1999 Aug 16, 2021
7077edc
git
tumble1999 Aug 16, 2021
0df2ae0
git
tumble1999 Aug 16, 2021
cbd3584
url
tumble1999 Aug 16, 2021
9def3aa
branch
tumble1999 Aug 16, 2021
0c6b208
key
tumble1999 Aug 16, 2021
df48acf
hmm
tumble1999 Aug 16, 2021
a610701
hmm
tumble1999 Aug 16, 2021
702bc61
hmm
tumble1999 Aug 16, 2021
776b1b4
possible auth
tumble1999 Aug 16, 2021
c4b22bb
possible auth
tumble1999 Aug 16, 2021
c001972
possible auth
tumble1999 Aug 16, 2021
53f00b5
some unit tests
tumble1999 Aug 16, 2021
d715af3
some unit tests
tumble1999 Aug 16, 2021
f62e8b2
some unit tests
tumble1999 Aug 16, 2021
9b50c37
disable CD
tumble1999 Aug 16, 2021
9beef0b
added badge
tumble1999 Aug 16, 2021
0848aba
remove checkout
tumble1999 Aug 16, 2021
1e0bd77
checkout the current branch
tumble1999 Aug 16, 2021
e704a00
arch testing
tumble1999 Aug 16, 2021
04c0ad2
runs-on no run-on
tumble1999 Aug 16, 2021
b36f178
rename
tumble1999 Aug 16, 2021
1e770b4
hmm
tumble1999 Aug 16, 2021
2042611
debian test
tumble1999 Aug 17, 2021
d050628
debian package test
tumble1999 Aug 17, 2021
4bb667b
arch test
tumble1999 Aug 17, 2021
8f631e3
arch
tumble1999 Aug 17, 2021
5e5b443
folder spelt wrong
tumble1999 Aug 17, 2021
41dfcc3
folder spelt wrong
tumble1999 Aug 17, 2021
d094548
forget shebang
tumble1999 Aug 17, 2021
b3e4747
update apt
tumble1999 Aug 17, 2021
b2f9f45
update apt
tumble1999 Aug 17, 2021
55b6ebd
all in one test
tumble1999 Aug 17, 2021
9e5d69b
docker container managing
tumble1999 Aug 17, 2021
51e3cc7
ficed indentaion
tumble1999 Aug 17, 2021
02e08c8
fixed spelling and added chmod
tumble1999 Aug 17, 2021
ba37a91
array
tumble1999 Aug 17, 2021
399b639
&&
tumble1999 Aug 17, 2021
1dc51c5
separate
tumble1999 Aug 17, 2021
2e985ee
start and stop with bash
tumble1999 Aug 17, 2021
7004817
hmm
tumble1999 Aug 17, 2021
234800d
hmm
tumble1999 Aug 17, 2021
7904c9a
clean up
tumble1999 Aug 17, 2021
cc9244e
test releasing
tumble1999 Aug 17, 2021
81bdd62
test releasing
tumble1999 Aug 17, 2021
2f33b70
.
tumble1999 Aug 17, 2021
a2a1e8c
indentation
tumble1999 Aug 17, 2021
971e940
steps object
tumble1999 Aug 17, 2021
2f59a0e
manual activation
tumble1999 Aug 17, 2021
94049cc
spelling
tumble1999 Aug 17, 2021
fd54bf1
spelling
tumble1999 Aug 17, 2021
bbcd6ee
body
tumble1999 Aug 17, 2021
9f2311b
test deb release
tumble1999 Aug 17, 2021
d7f3daa
only this branch
tumble1999 Aug 17, 2021
1f5cca6
fix maybe
tumble1999 Aug 17, 2021
bbb4175
fix maybe
tumble1999 Aug 17, 2021
8104873
needs
tumble1999 Aug 17, 2021
e9b04a5
artifact transfering
tumble1999 Aug 17, 2021
5481d82
chnage order
tumble1999 Aug 17, 2021
b0e769b
arch artifact
tumble1999 Aug 17, 2021
40c3430
Update CD.yml
tumble1999 Aug 17, 2021
6c1ed0e
indentation
tumble1999 Aug 17, 2021
22ac357
Update CD.yml
tumble1999 Aug 17, 2021
bb57611
indentation
tumble1999 Aug 17, 2021
5cb2174
step id
tumble1999 Aug 17, 2021
1faabaf
arch packages
tumble1999 Aug 17, 2021
2e4de0a
pkg folder
tumble1999 Aug 17, 2021
03739ab
fixed packaging
tumble1999 Aug 17, 2021
3afd5dc
dir
tumble1999 Aug 17, 2021
72edfd1
rename
tumble1999 Aug 17, 2021
77e7184
only releases will it release
tumble1999 Aug 17, 2021
efe6d7c
added manual release
tumble1999 Aug 17, 2021
5d79bcf
added manual release
tumble1999 Aug 17, 2021
c8845c8
test
tumble1999 Aug 17, 2021
727d93e
finishing touches
tumble1999 Aug 17, 2021
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
158 changes: 152 additions & 6 deletions .github/workflows/CD.yml
Original file line number Diff line number Diff line change
@@ -1,10 +1,156 @@
name: CD
name: Continuous Delivery
on:
push:
branches: [develop]
tags:
- "*"
branches:
- release
workflow_dispatch:
jobs:
debian:
runs-on: debian-stable
arch:
runs-on: arch
Debian:
runs-on: ubuntu-latest
steps:
- name: Checkout Branch
uses: actions/checkout@v2-beta # use either @v2-beta or @master. Eventually there will be a @v2 tag.

- name: Install Dependencies
run: |
sudo apt update -y
sudo apt upgrade -y
sudo apt install build-essential cmake libsdl2-dev libglew-dev libglm-dev libassimp-dev -y

- name: Configure
run: |
tests/debian.sh configure
- name: Build
run: |
tests/debian.sh build

- name: Package
run: |
tests/debian.sh package

- uses: actions/upload-artifact@v2
with:
name: debian-artifact
path: pkg/

Arch:
runs-on: ubuntu-latest
steps:
- name: Checkout Branch
uses: actions/checkout@v2-beta # use either @v2-beta or @master. Eventually there will be a @v2 tag.

- name: Install Dependencies
run: |
sudo docker build -f arch.dockerfile -t ce-arch .
sudo docker run -it -d --name ce-arch-test ce-arch
sudo docker exec ce-arch-test chmod +x /app/tests/arch.sh

- name: Configure
run: |
sudo docker exec ce-arch-test /app/tests/arch.sh configure

- name: Build
run: |
sudo docker exec ce-arch-test /app/tests/arch.sh build

- name: Package
run: |
sudo docker exec ce-arch-test /app/tests/arch.sh package
sudo docker cp ce-arch-test:/app/pkg .

- name: Clean Up
run: |
sudo docker stop ce-arch-test
sudo docker rm ce-arch-test -f
sudo docker rmi ce-arch -f

- uses: actions/upload-artifact@v2
with:
name: arch-artifact
path: pkg/

Release:
runs-on: ubuntu-latest
needs: [Debian, Arch]
steps:
- uses: actions/download-artifact@v2
with:
name: debian-artifact

- uses: actions/download-artifact@v2
with:
name: arch-artifact

- name: release
uses: actions/create-release@v1
id: create_release
with:
draft: false
prerelease: false
release_name: Cinnabar ${{ github.ref }}
tag_name: ${{ github.ref }}
body: hello world
env:
GITHUB_TOKEN: ${{ github.token }}

- name: libcinnabar-core.deb
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ github.token }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: ./libcinnabar-core.deb
asset_name: libcinnabar-core.deb
asset_content_type: application/vnd.debian.binary-package

- name: libcinnabar-core-dev.deb
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ github.token }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: ./libcinnabar-core-dev.deb
asset_name: libcinnabar-core-dev.deb
asset_content_type: application/vnd.debian.binary-package

- name: libcinnabar-render.deb
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ github.token }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: ./libcinnabar-render.deb
asset_name: libcinnabar-render.deb
asset_content_type: application/vnd.debian.binary-package

- name: libcinnabar-render-dev.deb
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ github.token }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: ./libcinnabar-render-dev.deb
asset_name: libcinnabar-render-dev.deb
asset_content_type: application/vnd.debian.binary-package

- name: cinnabar-core.pkg.tar.zst
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ github.token }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: ./cinnabar-core.pkg.tar.zst
asset_name: cinnabar-core.pkg.tar.zst
asset_content_type: application/vnd.debian.binary-package

- name: cinnabar-render.pkg.tar.zst
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ github.token }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: ./cinnabar-render.pkg.tar.zst
asset_name: cinnabar-render.pkg.tar.zst
asset_content_type: application/vnd.debian.binary-package
54 changes: 54 additions & 0 deletions .github/workflows/UnitTests.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
name: Unit Testing
on: [push, pull_request]
jobs:
Debian:
runs-on: ubuntu-latest
steps:
- name: Checkout Branch
uses: actions/checkout@v2-beta # use either @v2-beta or @master. Eventually there will be a @v2 tag.

- name: Install Dependencies
run: |
sudo apt update -y
sudo apt upgrade -y
sudo apt install build-essential cmake libsdl2-dev libglew-dev libglm-dev libassimp-dev -y
- name: Configure
run: |
tests/debian.sh configure
- name: Build
run: |
tests/debian.sh build
- name: Package
run: |
tests/debian.sh package
Arch:
runs-on: ubuntu-latest
steps:
- name: Checkout Branch
uses: actions/checkout@v2-beta # use either @v2-beta or @master. Eventually there will be a @v2 tag.

- name: Install Dependencies
run: |
sudo docker build -f arch.dockerfile -t ce-arch .
sudo docker run -it -d --name ce-arch-test ce-arch
sudo docker exec ce-arch-test chmod +x /app/tests/arch.sh
- name: Configure
run: |
sudo docker exec ce-arch-test /app/tests/arch.sh configure
- name: Build
run: |
sudo docker exec ce-arch-test /app/tests/arch.sh build
- name: Package
run: |
sudo docker exec ce-arch-test /app/tests/arch.sh package
- name: Clean Up
run: |
sudo docker stop ce-arch-test
sudo docker rm ce-arch-test -f
sudo docker rmi ce-arch -f
6 changes: 4 additions & 2 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
build/
packaging/*
dockerfile
!*/dockerfile


!packaging/*.sh
!packaging/*.sh
pkg
Loading