From c387da618f481bc74515a5dd7d23f6de0cd56ade Mon Sep 17 00:00:00 2001 From: Valentin Haudiquet Date: Thu, 20 Nov 2025 21:57:14 +0100 Subject: [PATCH] buildpath: added buildpath --- .github/dependabot.yml | 1 + .swarmcd/stacks.yaml | 7 +++ docker/production/buildpath/.env | 17 ++++++ .../production/buildpath/docker-compose.yml | 59 +++++++++++++++++++ 4 files changed, 84 insertions(+) create mode 100644 docker/production/buildpath/.env create mode 100644 docker/production/buildpath/docker-compose.yml diff --git a/.github/dependabot.yml b/.github/dependabot.yml index 46e4456..f9954a1 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -34,6 +34,7 @@ updates: - "/docker/personal/syncthing" - "/docker/personal/tandoor" - "/docker/production/alexscript" + - "/docker/production/buildpath" - "/docker/production/semeryfr" - "/docker/production/vhaudiquetfr" - "/docker/tools/excalidraw" diff --git a/.swarmcd/stacks.yaml b/.swarmcd/stacks.yaml index 11b8e6e..1358f9d 100644 --- a/.swarmcd/stacks.yaml +++ b/.swarmcd/stacks.yaml @@ -153,6 +153,13 @@ alexscript: branch: main compose_file: docker/production/alexscript/docker-compose.yml +buildpath: + repo: homeprod + branch: main + compose_file: docker/production/buildpath/docker-compose.yml + sops_files: + - docker/production/buildpath/.env + semeryfr: repo: homeprod branch: main diff --git a/docker/production/buildpath/.env b/docker/production/buildpath/.env new file mode 100644 index 0000000..77ba9ca --- /dev/null +++ b/docker/production/buildpath/.env @@ -0,0 +1,17 @@ +MONGO_INITDB_ROOT_USERNAME=ENC[AES256_GCM,data:rwUm/g==,iv:khWSBWcjoR+jOFrw3KTbTrqlyvqgKk9xGS7sR9PV41Y=,tag:2/EWzkZlXHl1x5al0UfBnA==,type:str] +MONGO_INITDB_ROOT_PASSWORD=ENC[AES256_GCM,data:5m5vejGtDGY=,iv:bp6vfTfE74fSqRM8ue2vQ8YMpJoKMEp5zci10sNZkJ0=,tag:fNNkTCpMip8LNX73pqM4Uw==,type:str] +ME_CONFIG_MONGODB_ADMINUSERNAME=ENC[AES256_GCM,data:j6K5ng==,iv:9a6VW6Dz+0ffqvfWWdk9JT/IbJ2KS4+N+UoiiDdbKBc=,tag:RnPyWv0wpgCtFwpAEYid+g==,type:str] +ME_CONFIG_MONGODB_ADMINPASSWORD=ENC[AES256_GCM,data:xAgtJ+CWQBw=,iv:Whjz16ztqIAQ8psVd48Qasc/I7VLPqY9uYFhMhtJmos=,tag:Fbvb8F7E2rdFHf7yRynKAQ==,type:str] +ME_CONFIG_MONGODB_URL=ENC[AES256_GCM,data:a2KxiCfr7YRFFsPSLdJv5zvBfIc1bThQxFJFDtFl3AYq9pZx,iv:53F2MDFHDbKuWnFpasGDe1ns+H3LRIOAgiBKwjeXq1s=,tag:8oFnFul+zsZJmehEmJVBPw==,type:str] +ME_CONFIG_BASICAUTH=ENC[AES256_GCM,data:26v6OYS00g==,iv:heu0YVZC78uCUpKlVhU+XOSzSDoPivhy4moZ3VJQCA4=,tag:+gXRQBHYBxB4jZPVpqL5nA==,type:str] +MONGO_USER=ENC[AES256_GCM,data:50LlCw==,iv:SDK2CRGXUw/Q2pVMJ9bmyN19aFPEmvcZ06dNWyfm9WE=,tag:krDMLXVwX0MboftOuR/+RA==,type:str] +MONGO_PASS=ENC[AES256_GCM,data:sRYN47vKlDM=,iv:GBZZ7uWEui9TK5km6VmTRbZoflNnxDrnCzVnfUc1kA4=,tag:CmwuLhC72d18s1hPpkpNmA==,type:str] +MONGO_HOST=ENC[AES256_GCM,data:7Lg4tZE=,iv:7lOeSBrhwvUbHSlZzry3VJwkRjrF2ZwO0EplpRkZRZI=,tag:h22FWrZEPPkxl+iavVW6/g==,type:str] +RIOT_API_KEY=ENC[AES256_GCM,data:AuxSeYoUMrlT/P6qeZuqBesrKvUq90DVC3qUL9tboH84gMU357uk0JpE,iv:0einI4VINFS+siKXSiJolmP5gvCI5edd+rbq+m+2NyA=,tag:qoy91XQvMxPljYKmWnDBYg==,type:str] +sops_lastmodified=2025-11-20T20:56:58Z +sops_mac=ENC[AES256_GCM,data:g693BhUClMH2TwkZlBQeTqNiX9xn3UncyEu2IQlQS03M7HcQD8PQXNsTfU9nr4pYKuuY0NWbh/O1j9Wf12Z64qaC3v1aXDh3aeNR/dJ73DP5TfSJxJuhuo0an0QPJKD8/UvH2pn7mKZQ0gkb7RbtYEVbvehlIgHoqKEmCtbNSyk=,iv:c+Gbxr3CE4YezaEXp17vbG1nmwJ5FEnwb/JRO9f8dMU=,tag:ZAwK3WwHt1EU0MGw0HaySg==,type:str] +sops_pgp__list_0__map_created_at=2025-11-20T20:56:58Z +sops_pgp__list_0__map_enc=-----BEGIN PGP MESSAGE-----\n\nhQIMA7uy4qQr71wiAQ//W98mQjNIH+G/YDUN2C2Jb1+Lm0vtorJLF7JOBm9VL03V\n0Vy1zmo9z9uO5EDOF6CJoXbVPMugXu2Y/UUAmT1Ztr/kXdQfQvSXW+F5zFDYIxbt\nVwd9RCPw2t5VxKYAVHkbJohDJ1yi3DNKjVPevxKLeGJu/kdd9FVa9JWrP5sdnJlC\nkD4OAkUDT5Su7GUy+Kb/nTFL8EVaQ+DkkeW+BGe6eucl0OI+ehaZgYEkuv/pyf+3\nGHhmCZZwG85+oE7aUWx6SaVeKUOVHg3/jYScqAPdKg1YaVGn2bFq7Z8t/4z2pOro\nRChVRZ/1gMfifZ2EwOVIDfWCdikFDGsbuLmayb/mlRx1iRLqJZRhwrD3oBWdfw7H\np5eVw1q+HZMN5jk7S+Vo5sawKTKpX9vU0nywoEm62iSF1IGh2CBIqv43AxG5Xo4D\n8s9urAiMsiSY2WwUJw2Mf6FdhFZrhdU9PBAUmCcMgDixQSkCGr4e6ReTQR0AB4Uz\nPQri40/xMq0nKhcYSP3qeTyRt8jpPM/FyhWwKG28mF+jzjW0EiY6uJQ1N+DJrFRx\nuRKQJTGGBJpteiyUwn3J8DmHBUX6TNH55TzRKnE8VAwFDf2qKmu4A+3o4Bpympgp\nS2ZEr9HVkXSTy57ROd9aBlv+kzOEH8Pg72w4QM0rM59S8FNljM2VRwl7F7RQuVfS\nXgG5SkeOdPxcUY4NKJcJYmOoueoV8quI8Nj9GiqD1wlbO9Fnq/YZefnk0Kd8AAfx\nUZbvNiVi9761LECDKCP2K5sOH5B4fHdHdxGsGmbwC583YKBI47dF+CuQmpqsXso=\n=1Qd3\n-----END PGP MESSAGE----- +sops_pgp__list_0__map_fp=DC6910268E657FF70BA7EC289974494E76938DDC +sops_unencrypted_suffix=_unencrypted +sops_version=3.10.2 diff --git a/docker/production/buildpath/docker-compose.yml b/docker/production/buildpath/docker-compose.yml new file mode 100644 index 0000000..6244020 --- /dev/null +++ b/docker/production/buildpath/docker-compose.yml @@ -0,0 +1,59 @@ +services: + mongo: + hostname: mongo + image: mongo:latest + restart: always + volumes: + - mongo_data:/data/db + env_file: .env + + patch_detector: + image: git.vhaudiquet.fr/vhaudiquet/lolstats-patch_detector:${GIT_COMMIT_HASH:-latest} + build: ./patch_detector + restart: "no" + deploy: + restart_policy: + condition: any + delay: '0' + window: 10s + env_file: .env + + + match_collector: + image: git.vhaudiquet.fr/vhaudiquet/lolstats-match_collector:${GIT_COMMIT_HASH:-latest} + build: ./match_collector + restart: "no" + deploy: + restart_policy: + condition: any + delay: '0' + window: 20s + env_file: .env + + frontend: + image: git.vhaudiquet.fr/vhaudiquet/lolstats-frontend:${GIT_COMMIT_HASH:-latest} + build: ./frontend + restart: always + networks: + - default + - proxy + ports: + - "3000" + labels: + - "traefik.enable=true" + - "traefik.http.routers.frontend.rule=Host(`buildpath.win`)" + - "traefik.http.services.frontend.loadbalancer.server.port=3000" + env_file: .env + +volumes: + mongo_data: + driver: local + driver_opts: + type: 'none' + o: 'bind' + device: '/app/buildpath/data' + +networks: + proxy: + external: true + name: proxy