8 Commits

Author SHA1 Message Date
0d45b21bce Update image name
Some checks failed
Build & Release / build-docker-image (push) Failing after 46s
Build & Release / deploy-to-production (push) Has been skipped
2026-02-24 18:31:17 +01:00
3af5f8ff61 Update image name
Some checks failed
Build & Release / build-docker-image (push) Failing after 46s
Build & Release / deploy-to-production (push) Has been skipped
2026-02-24 18:26:28 +01:00
bf939790c0 Update image name
Some checks failed
Build & Release / build-docker-image (push) Failing after 47s
Build & Release / deploy-to-production (push) Has been skipped
2026-02-24 18:24:23 +01:00
6a0b836c0f Update image name
Some checks failed
Build & Release / deploy-to-production (push) Has been skipped
Build & Release / build-docker-image (push) Failing after 47s
2026-02-24 17:55:10 +01:00
16c2c8e386 Log build version
Some checks failed
Build & Release / build-docker-image (push) Failing after 2m36s
Build & Release / deploy-to-production (push) Has been skipped
2026-02-18 19:51:41 +01:00
aeeeebd3da Fix docker image version arg
All checks were successful
Build & Release / build-docker-image (push) Successful in 3m19s
Build & Release / deploy-to-production (push) Successful in 6s
2026-02-18 18:51:16 +01:00
2134eed508 Fix mastobot embed url
All checks were successful
Build & Release / build-docker-image (push) Successful in 1m29s
Build & Release / deploy-to-production (push) Successful in 6s
2026-02-18 18:33:38 +01:00
0ebb992280 Rename image
Some checks failed
Build & Release / build-docker-image (push) Successful in 1m24s
Build & Release / deploy-to-production (push) Failing after 5s
2026-02-17 15:02:25 +01:00
3 changed files with 12 additions and 6 deletions

View File

@@ -7,7 +7,7 @@ on:
env: env:
ENDPOINT: services-3 ENDPOINT: services-3
STACK: mastodon STACK: mastodon
IMAGE: com.devsoap/mastobot IMAGE: docker/mastobot
TAG: ${{ gitea.ref_name }} TAG: ${{ gitea.ref_name }}
CACHE_NAME: cache-python-dependencies-mastobot CACHE_NAME: cache-python-dependencies-mastobot
RUNNER_TOOL_CACHE: /toolcache RUNNER_TOOL_CACHE: /toolcache
@@ -32,13 +32,13 @@ jobs:
username: ${{ secrets.DOCKER_REGISTRY_USER }} username: ${{ secrets.DOCKER_REGISTRY_USER }}
password: ${{ secrets.DOCKER_REGISTRY_PASSWORD }} password: ${{ secrets.DOCKER_REGISTRY_PASSWORD }}
- name: Build and push Docker image - name: Build and push Docker image
uses: docker/build-push-action@v4 uses: docker/build-push-action@v6
with: with:
context: . context: .
file: ./Dockerfile file: ./Dockerfile
push: true push: true
build-args: | build-args: |
VERSION=${{env.TAG}} version=${{env.TAG}}
tags: | tags: |
${{secrets.DOCKER_REGISTRY}}/${{env.IMAGE}}:${{env.TAG}} ${{secrets.DOCKER_REGISTRY}}/${{env.IMAGE}}:${{env.TAG}}
${{secrets.DOCKER_REGISTRY}}/${{env.IMAGE}}:latest ${{secrets.DOCKER_REGISTRY}}/${{env.IMAGE}}:latest

View File

@@ -6,6 +6,7 @@ COPY ./app /code/app
COPY ./log_config.yml /code/log_config.yml COPY ./log_config.yml /code/log_config.yml
ARG version ARG version
ENV VERSION=${version} ENV VERSION=${version}
RUN echo "Build Version: $VERSION"
HEALTHCHECK --interval=30s --timeout=5s --start-period=10s --retries=3 \ HEALTHCHECK --interval=30s --timeout=5s --start-period=10s --retries=3 \
CMD wget --spider --quiet --tries=1 --timeout=5 --server-response http://127.0.0.1:8000/health 2>&1 | grep "200 OK" > /dev/null CMD wget --spider --quiet --tries=1 --timeout=5 --server-response http://127.0.0.1:8000/health 2>&1 | grep "200 OK" > /dev/null
CMD ["uvicorn", "main:app", "--app-dir", "app", "--log-config", "log_config.yml", "--host","0.0.0.0", "--port", "8000"] CMD ["uvicorn", "main:app", "--app-dir", "app", "--log-config", "log_config.yml", "--host","0.0.0.0", "--port", "8000"]

View File

@@ -18,12 +18,17 @@ logger = logging.getLogger(__name__)
@router.get("/generate", summary="Embeddable Mastodon Feed") @router.get("/generate", summary="Embeddable Mastodon Feed")
async def generate_static_page(settings: Annotated[Settings, Depends(get_settings)]): async def generate_static_page(settings: Annotated[Settings, Depends(get_settings)]):
mastodon_token = settings.feeds['embed']['token']
mastodon_server = settings.mastodon_server
mastodon_aid = settings.feeds['embed']['account_id']
mastodon_token = str(settings.feeds['embed']['token'])
mastodon_get_statuses_url=f'{mastodon_server}/api/v1/accounts/{mastodon_aid}/statuses'
s3_bucket = settings.feeds['embed']['s3_bucket'] s3_bucket = settings.feeds['embed']['s3_bucket']
s3_filename = settings.feeds['embed']['s3_key'] s3_filename = settings.feeds['embed']['s3_key']
mastodon_get_statuses_url=settings.feeds['embed']['url']
try: try:
latest_statuses = load_latest_statuses(mastodon_get_statuses_url, mastodon_token,20) latest_statuses = load_latest_statuses(mastodon_get_statuses_url, mastodon_token, 20)
latest_statuses = [status for status in latest_statuses if status['in_reply_to_id'] == None] latest_statuses = [status for status in latest_statuses if status['in_reply_to_id'] == None]
latest_statuses = [status for status in latest_statuses if status['in_reply_to_account_id'] == None] latest_statuses = [status for status in latest_statuses if status['in_reply_to_account_id'] == None]
latest_statuses = [status for status in latest_statuses if status['reblog'] == None] latest_statuses = [status for status in latest_statuses if status['reblog'] == None]