Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 1 addition & 2 deletions .docker/app/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -51,8 +51,7 @@ RUN apk add -U --no-cache \
if [ "${RAILS_ENV}" = "production" ]; then apk del build-dependencies; fi && \
rm -rf /var/cache/apk/ && \
mkdir -p /secure-tmp && chmod 700 /secure-tmp && \
mkdir -p /secure-tmp/log && chmod 700 /secure-tmp/log && \
rails users:sync_initial
mkdir -p /secure-tmp/log && chmod 700 /secure-tmp/log
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

if /secure-tmp/ is a volume mount then I think it makes more sense to move creating this direcotry in the entrypoint script because that happens after the container and volumes are mounted vs. here where volumens are not mounted yet.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@dkinzer This is following a pattern that we have moved to in our other Kubernetes applications. This setup replaces the setup-tmp-dir initContainer that we used to have in our projects. This needs to exist before the containers start to spin up because the tmp directory needs to exist in order for the db-migrate init container to successfully run.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@sensei100 I'd like for all of us to do a zoom together to test this because i'm still confused how this could be working.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't really want to do a zoom on a Friday afternoon, but we can look at it together on Monday. This is fully working in Tupress and centralized metadata right now if you want to look at where projects where it has already been implemented.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

CM is working inspite of these changes not because of it. If you look inside cm container there is no /secure-tmp/log folder even though it gets created in Dockerfile.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

After a team discussion, we agreed to move the secure-tmp/log line into the entry point.sh file.


USER 65534:65534

Expand Down
3 changes: 2 additions & 1 deletion .docker/app/entrypoint.sh
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
#!/usr/bin/env bash
set -e

rails db:migrate 2>/dev/null || rails db:setup
rails db:prepare
rails users:sync_initial
rm -f /app/.internal_test_app/tmp/pids/server.pid

exec "$@"