build docker images in GitHub

This commit is contained in:
Pavel 2024-05-26 14:43:20 +03:00
parent dfd96f3781
commit bd27eb9694
2 changed files with 32 additions and 3 deletions

30
.github/workflows/ci.yml vendored Normal file
View File

@ -0,0 +1,30 @@
name: ci
on:
push:
branches:
- 'master'
jobs:
docker:
runs-on: ubuntu-latest
steps:
-
name: Set up QEMU
uses: docker/setup-qemu-action@v3
-
name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
-
name: Login to Docker Hub
uses: docker/login-action@v3
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
-
name: Build and push
uses: docker/build-push-action@v5
with:
push: true
platforms: linux/amd64,linux/arm64
tags: neur0toxine/atranscoder-rpc:latest

View File

@ -21,13 +21,12 @@ curl --location 'http://localhost:8090/enqueue' \
3. You will receive JSON response with job ID. The transcoding result will be saved into `/tmp/{job_id}.out.atranscoder` 3. You will receive JSON response with job ID. The transcoding result will be saved into `/tmp/{job_id}.out.atranscoder`
# Roadmap # Roadmap
- [ ] Restart threads in case of panic. - [ ] ~~Restart threads in case of panic.~~ It's better to not panic. Current error handling seems ok for now.
- [x] Implement somewhat acceptable error handling. - [x] Implement somewhat acceptable error handling.
- [x] Remove old conversion results and input files that are older than 1 hour. - [x] Remove old conversion results and input files that are older than 1 hour.
- [x] Remove input file after transcoding it. - [x] Remove input file after transcoding it.
- [x] Implement file upload to `uploadUrl` (if `Content-Type: application/json` then conversion was not successful and body contains an error info). - [x] Implement file upload to `uploadUrl` (if `Content-Type: application/json` then conversion was not successful and body contains an error info).
- [x] Remove transcoding result after uploading it to the `uploadUrl`. - [x] Remove transcoding result after uploading it to the `uploadUrl`.
- [ ] (Optional) Make `uploadUrl` optional and allow the client to download the file on-demand. - [x] Docker image for `amd64` and `aarch64`.
- [ ] Docker image for `amd64` and `aarch64`.
- [ ] ~~Statically linked binary for Docker image & result docker image based on `scratch` (reduce image size).~~ Not yet, see [Dockerfile.scratch](Dockerfile.scratch). - [ ] ~~Statically linked binary for Docker image & result docker image based on `scratch` (reduce image size).~~ Not yet, see [Dockerfile.scratch](Dockerfile.scratch).
- [ ] Tests! - [ ] Tests!