mirror of
https://github.com/mickael-kerjean/filestash
synced 2025-12-15 21:04:46 +01:00
chore (ci): remove github action since everything moved back to Jenkins
This commit is contained in:
parent
8bf5a88d49
commit
68dce10346
1 changed files with 0 additions and 249 deletions
249
.github/workflows/ci.yml
vendored
249
.github/workflows/ci.yml
vendored
|
|
@ -1,249 +0,0 @@
|
|||
name: CI
|
||||
on:
|
||||
push:
|
||||
branches: [ "master" ]
|
||||
pull_request:
|
||||
branches: [ "master" ]
|
||||
|
||||
jobs:
|
||||
build_frontend:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/setup-node@v3
|
||||
with:
|
||||
node-version: 14.x
|
||||
- name: Setup
|
||||
run: npm install
|
||||
- name: Build
|
||||
run: make build_frontend
|
||||
- uses: actions/upload-artifact@master
|
||||
with:
|
||||
name: build-frontend
|
||||
path: server/ctrl/static/www/
|
||||
|
||||
build_backend:
|
||||
needs: build_frontend
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/download-artifact@master
|
||||
with:
|
||||
name: build-frontend
|
||||
path: server/ctrl/static/www/
|
||||
- uses: actions/setup-go@v3.5.0
|
||||
with:
|
||||
go-version: 1.19
|
||||
- name: Setup
|
||||
run: |
|
||||
sudo apt install -y libraw-dev libjpeg-dev libpng-dev libheif-dev libwebp-dev libgif-dev
|
||||
sudo apt install -y build-essential libstdc++6 libomp-dev
|
||||
mkdir -p ./dist/data/state/config
|
||||
cp config/config.json ./dist/data/state/config/
|
||||
- name: Build
|
||||
run: |
|
||||
make build_init
|
||||
make build_backend
|
||||
- uses: actions/upload-artifact@master
|
||||
with:
|
||||
name: build
|
||||
path: dist
|
||||
- name: Verify
|
||||
run: timeout 5 ./dist/filestash || code=$?; if [[ $code -ne 124 ]]; then exit $code; fi
|
||||
|
||||
test_frontend:
|
||||
needs: [build_frontend, build_backend]
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- name: Clone test repo
|
||||
uses: actions/checkout@v3
|
||||
with:
|
||||
repository: mickael-kerjean/filestash-test
|
||||
ssh-key: ${{ secrets.DEPLOY_KEY_FILESTASH_TEST }}
|
||||
path: test
|
||||
- uses: actions/setup-node@v3
|
||||
with:
|
||||
node-version: 14.x
|
||||
- name: Setup
|
||||
run: |
|
||||
npm install
|
||||
cd ./test/unit_js
|
||||
npm install
|
||||
- name: Run
|
||||
run: |
|
||||
cd ./test/unit_js
|
||||
npm test
|
||||
|
||||
# verify_frontend:
|
||||
# needs: [build_frontend, build_backend]
|
||||
# runs-on: ubuntu-latest
|
||||
# steps:
|
||||
# - uses: actions/checkout@v3
|
||||
# - uses: actions/setup-node@v3
|
||||
# with:
|
||||
# node-version: 14.x
|
||||
# - name: Setup
|
||||
# run: cd public && npm install
|
||||
# - name: Run
|
||||
# run: |
|
||||
# cd public
|
||||
# # npx eslint .
|
||||
# npx tsc
|
||||
|
||||
test_backend:
|
||||
needs: [build_frontend, build_backend]
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- name: Clone test repo
|
||||
uses: actions/checkout@v3
|
||||
with:
|
||||
repository: mickael-kerjean/filestash-test
|
||||
ssh-key: ${{ secrets.DEPLOY_KEY_FILESTASH_TEST }}
|
||||
path: test
|
||||
- uses: actions/download-artifact@v3
|
||||
with:
|
||||
name: build-frontend
|
||||
path: server/ctrl/static/www/
|
||||
- uses: actions/setup-go@v3.5.0
|
||||
with:
|
||||
go-version: 1.19
|
||||
- name: Setup
|
||||
run: |
|
||||
sudo apt-get install -y poppler-utils
|
||||
cp ./test/assets/* /tmp/
|
||||
mkdir server/ctrl/static/www/ && touch server/ctrl/static/www/index.html
|
||||
make build_init
|
||||
rm -rf server/generator/
|
||||
go generate ./test/unit_go/...
|
||||
go get github.com/stretchr/testify/assert
|
||||
go mod vendor
|
||||
- name: Run
|
||||
run: go test --tags "fts5" -count=1 $(go list ./server/... | grep -v "server/plugin" | grep -v "server/generator")
|
||||
|
||||
test_smoke:
|
||||
needs: [build_frontend, build_backend]
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Init
|
||||
uses: actions/download-artifact@v3
|
||||
with:
|
||||
name: build
|
||||
- name: Run
|
||||
run: |
|
||||
chmod +x filestash
|
||||
timeout 5 ./filestash > access.log || code=$?; if [[ $code -ne 124 ]]; then exit $code; fi
|
||||
echo "========= access.log "
|
||||
cat access.log
|
||||
echo "====================="
|
||||
cat access.log | grep -q "Filestash v0.5 starting"
|
||||
cat access.log | grep -q "listening on :"
|
||||
cat access.log | grep -vz "WARN"
|
||||
cat access.log | grep -vz "ERR"
|
||||
|
||||
# test_e2e:
|
||||
# needs: [test_smoke]
|
||||
# runs-on: ubuntu-latest
|
||||
# container:
|
||||
# image: machines/puppeteer
|
||||
# options: --user root
|
||||
# env:
|
||||
# ADMIN_PASSWORD: $2a$10$9OFbPZV4lYpYjU5eUi91o.kgeMyCuW11j878YBRri3gBwccq2lSFy
|
||||
# APP_URL: http://127.0.0.1:8334
|
||||
# CI: true
|
||||
# steps:
|
||||
# - uses: actions/checkout@v3
|
||||
# - name: Clone test repo
|
||||
# uses: actions/checkout@v3
|
||||
# with:
|
||||
# repository: mickael-kerjean/filestash-test
|
||||
# ssh-key: ${{ secrets.DEPLOY_KEY_FILESTASH_TEST }}
|
||||
# path: test
|
||||
# - name: Restore Build
|
||||
# uses: actions/download-artifact@v3
|
||||
# with:
|
||||
# name: build
|
||||
# - name: Setup
|
||||
# run: |
|
||||
# cd ./test/e2e
|
||||
# npm install
|
||||
# - name: Run
|
||||
# run: |
|
||||
# chmod +x ./filestash
|
||||
# ./filestash > /dev/null &
|
||||
# cd ./test/e2e
|
||||
# node servers/webdav.js > /dev/null &
|
||||
# npm test
|
||||
|
||||
release_docker_amd64:
|
||||
# if: github.ref == 'refs/heads/master'
|
||||
needs: [ test_backend, test_frontend, test_smoke ]
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Init
|
||||
uses: actions/checkout@v3
|
||||
- name: Setup
|
||||
uses: docker/login-action@v2
|
||||
with:
|
||||
username: ${{ secrets.DOCKERHUB_USERNAME }}
|
||||
password: ${{ secrets.DOCKERHUB_TOKEN }}
|
||||
- name: Run
|
||||
run: |
|
||||
docker build -t machines/filestash:latest-amd64 ./docker/
|
||||
docker push machines/filestash:latest-amd64
|
||||
|
||||
release_docker_arm64:
|
||||
if: github.ref == 'refs/heads/master'
|
||||
needs: [ test_backend, test_frontend, test_smoke ]
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Init
|
||||
uses: actions/checkout@v3
|
||||
- name: Setup
|
||||
uses: docker/login-action@v2
|
||||
with:
|
||||
username: ${{ secrets.DOCKERHUB_USERNAME }}
|
||||
password: ${{ secrets.DOCKERHUB_TOKEN }}
|
||||
- name: Set up QEMU
|
||||
uses: docker/setup-qemu-action@v2
|
||||
- name: Set up Docker Buildx
|
||||
uses: docker/setup-buildx-action@v2
|
||||
- name: Run
|
||||
run: |
|
||||
uname -m
|
||||
uname -a
|
||||
docker version
|
||||
# docker build -t machines/filestash:latest-arm64 ./docker/
|
||||
# echo "DONE"
|
||||
|
||||
release_docker:
|
||||
needs: [ release_docker_amd64, release_docker_arm64 ]
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Init
|
||||
uses: actions/checkout@v3
|
||||
- name: Setup
|
||||
uses: docker/login-action@v2
|
||||
with:
|
||||
username: ${{ secrets.DOCKERHUB_USERNAME }}
|
||||
password: ${{ secrets.DOCKERHUB_TOKEN }}
|
||||
- name: Run
|
||||
run: |
|
||||
docker manifest create machines/filestash:latest \
|
||||
--amend machines/filestash:latest-amd64 \
|
||||
--amend machines/filestash:latest-arm64v8
|
||||
docker manifest push machines/filestash:latest
|
||||
|
||||
deploy:
|
||||
if: github.ref == 'refs/heads/master'
|
||||
needs: release_docker
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Setup
|
||||
uses: Azure/k8s-set-context@v1
|
||||
with:
|
||||
method: kubeconfig
|
||||
kubeconfig: ${{ secrets.KUBE_CONFIG }}
|
||||
- name: Deploy
|
||||
run: kubectl rollout restart deployment app-filestash-demo -n filestash
|
||||
Loading…
Reference in a new issue