forked from immich-app/immich
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
WIP refactor container and queuing system (immich-app#206)
* refactor microservices to machine-learning * Update tGithub issue template with correct task syntax * Added microservices container * Communicate between service based on queue system * added dependency * Fixed problem with having to import BullQueue into the individual service * Added todo * refactor server into monorepo with microservices * refactor database and entity to library * added simple migration * Move migrations and database config to library * Migration works in library * Cosmetic change in logging message * added user dto * Fixed issue with testing not able to find the shared library * Clean up library mapping path * Added webp generator to microservices * Update Github Action build latest * Fixed issue NPM cannot install due to conflict witl Bull Queue * format project with prettier * Modified docker-compose file * Add GH Action for Staging build: * Fixed GH action job name * Modified GH Action to only build & push latest when pushing to main * Added Test 2e2 Github Action * Added Test 2e2 Github Action * Implemented microservice to extract exif * Added cronjob to scan and generate webp thumbnail at midnight * Refactor to ireduce hit time to database when running microservices * Added error handling to asset services that handle read file from disk * Added video transcoding queue to process one video at a time * Fixed loading spinner on web while loading covering the info panel * Add mechanism to show new release announcement to web and mobile app (immich-app#209) * Added changelog page * Fixed issues based on PR comments * Fixed issue with video transcoding run on the server * Change entry point content for backward combatibility when starting up server * Added announcement box * Added error handling to failed silently when the app version checking is not able to make the request to GITHUB * Added new version announcement overlay * Update message * Added messages * Added logic to check and show announcement * Add method to handle saving new version * Added button to dimiss the acknowledge message * Up version for deployment to the app store
- Loading branch information
1 parent
397f8c7
commit a822017
Showing
192 changed files
with
1,827 additions
and
2,121 deletions.
There are no files selected for viewing
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
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
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -4,17 +4,16 @@ on: | |
workflow_dispatch: | ||
push: | ||
branches: [main] | ||
pull_request: | ||
branches: [main] | ||
|
||
jobs: | ||
build_and_push_server_latest: | ||
# This image include both the server and microservices - the two containers can be slitted into separated | ||
# service with its coressponding entry file. | ||
build_and_push_server_monorepo_latest: | ||
runs-on: ubuntu-latest | ||
steps: | ||
- name: Checkout | ||
uses: actions/checkout@v3 | ||
with: | ||
# ref: "main" # branch | ||
fetch-depth: 0 | ||
|
||
- name: Set up QEMU | ||
|
@@ -27,23 +26,22 @@ jobs: | |
with: | ||
username: ${{ secrets.DOCKERHUB_USERNAME }} | ||
password: ${{ secrets.DOCKERHUB_TOKEN }} | ||
- name: Build and push Immich | ||
- name: Build and push Immich Mono Repo | ||
uses: docker/[email protected] | ||
with: | ||
context: ./server | ||
file: ./server/Dockerfile | ||
platforms: linux/arm/v7,linux/amd64,linux/arm64 | ||
push: ${{ github.event_name != 'pull_request' }} | ||
push: true | ||
tags: | | ||
altran1502/immich-server:latest | ||
build_and_push_microservice_latest: | ||
build_and_push_machine_learning_latest: | ||
runs-on: ubuntu-latest | ||
steps: | ||
- name: Checkout | ||
uses: actions/checkout@v3 | ||
with: | ||
# ref: "main" # branch | ||
fetch-depth: 0 | ||
|
||
- name: Set up QEMU | ||
|
@@ -56,23 +54,22 @@ jobs: | |
with: | ||
username: ${{ secrets.DOCKERHUB_USERNAME }} | ||
password: ${{ secrets.DOCKERHUB_TOKEN }} | ||
- name: Build and Push Microservices | ||
- name: Build and Push Machine Learning | ||
uses: docker/[email protected] | ||
with: | ||
context: ./microservices | ||
file: ./microservices/Dockerfile | ||
context: ./machine-learning | ||
file: ./machine-learning/Dockerfile | ||
platforms: linux/arm/v7,linux/amd64 | ||
push: ${{ github.event_name != 'pull_request' }} | ||
push: true | ||
tags: | | ||
altran1502/immich-microservices:latest | ||
altran1502/immich-machine-learning:latest | ||
build_and_push_web_latest: | ||
runs-on: ubuntu-latest | ||
steps: | ||
- name: Checkout | ||
uses: actions/checkout@v3 | ||
with: | ||
# ref: "main" # branch | ||
fetch-depth: 0 | ||
- name: Set up QEMU | ||
uses: docker/[email protected] | ||
|
@@ -91,6 +88,6 @@ jobs: | |
file: ./web/Dockerfile | ||
platforms: linux/arm/v7,linux/amd64,linux/arm64 | ||
target: prod | ||
push: ${{ github.event_name != 'pull_request' }} | ||
push: true | ||
tags: | | ||
altran1502/immich-web:latest |
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,95 @@ | ||
name: Build and Push Docker Image - Staging | ||
|
||
on: | ||
workflow_dispatch: | ||
push: | ||
branches: [main] | ||
pull_request: | ||
branches: [main] | ||
|
||
jobs: | ||
# This image include both the server and microservices - the two containers can be slitted into separated | ||
# service with its coressponding entry file. | ||
build_and_push_server_monorepo_staging: | ||
runs-on: ubuntu-latest | ||
steps: | ||
- name: Checkout | ||
uses: actions/checkout@v3 | ||
with: | ||
fetch-depth: 0 | ||
|
||
- name: Set up QEMU | ||
uses: docker/[email protected] | ||
- name: Set up Docker Buildx | ||
id: buildx | ||
uses: docker/[email protected] | ||
- name: Login to Docker Hub | ||
uses: docker/login-action@v2 | ||
with: | ||
username: ${{ secrets.DOCKERHUB_USERNAME }} | ||
password: ${{ secrets.DOCKERHUB_TOKEN }} | ||
- name: Build and push Immich Mono Repo | ||
uses: docker/[email protected] | ||
with: | ||
context: ./server | ||
file: ./server/Dockerfile | ||
platforms: linux/arm/v7,linux/amd64,linux/arm64 | ||
push: ${{ github.event_name == 'pull_request' }} | ||
tags: | | ||
altran1502/immich-server:staging | ||
build_and_push_machine_learning_staging: | ||
runs-on: ubuntu-latest | ||
steps: | ||
- name: Checkout | ||
uses: actions/checkout@v3 | ||
with: | ||
fetch-depth: 0 | ||
|
||
- name: Set up QEMU | ||
uses: docker/[email protected] | ||
- name: Set up Docker Buildx | ||
id: buildx | ||
uses: docker/[email protected] | ||
- name: Login to Docker Hub | ||
uses: docker/login-action@v2 | ||
with: | ||
username: ${{ secrets.DOCKERHUB_USERNAME }} | ||
password: ${{ secrets.DOCKERHUB_TOKEN }} | ||
- name: Build and Push Machine Learning | ||
uses: docker/[email protected] | ||
with: | ||
context: ./machine-learning | ||
file: ./machine-learning/Dockerfile | ||
platforms: linux/arm/v7,linux/amd64 | ||
push: ${{ github.event_name == 'pull_request' }} | ||
tags: | | ||
altran1502/immich-machine-learning:staging | ||
build_and_push_web_staging: | ||
runs-on: ubuntu-latest | ||
steps: | ||
- name: Checkout | ||
uses: actions/checkout@v3 | ||
with: | ||
fetch-depth: 0 | ||
- name: Set up QEMU | ||
uses: docker/[email protected] | ||
- name: Set up Docker Buildx | ||
id: buildx | ||
uses: docker/[email protected] | ||
- name: Login to Docker Hub | ||
uses: docker/login-action@v2 | ||
with: | ||
username: ${{ secrets.DOCKERHUB_USERNAME }} | ||
password: ${{ secrets.DOCKERHUB_TOKEN }} | ||
- name: Build and Push Web | ||
uses: docker/[email protected] | ||
with: | ||
context: ./web | ||
file: ./web/Dockerfile | ||
platforms: linux/arm/v7,linux/amd64,linux/arm64 | ||
target: prod | ||
push: ${{ github.event_name == 'pull_request' }} | ||
tags: | | ||
altran1502/immich-web:staging |
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
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
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
File renamed without changes.
File renamed without changes.
Oops, something went wrong.