Skip to content

Adding local development environment in podman#12

Merged
NeilHanlon merged 3 commits intorocky-linux:mainfrom
jsco2t:local-dev-env
Jan 12, 2026
Merged

Adding local development environment in podman#12
NeilHanlon merged 3 commits intorocky-linux:mainfrom
jsco2t:local-dev-env

Conversation

@jsco2t
Copy link
Contributor

@jsco2t jsco2t commented Nov 25, 2025

This change adds a local mattermost development environment which runs in podman. The change includes a set of make dev-* make targets which are used to manage the local development environment. In the newly created /docs directory there is a document which explains how to make use of the local development environment.

@jsco2t
Copy link
Contributor Author

jsco2t commented Dec 17, 2025

Issue for this PR: #9

@NeilHanlon
Copy link
Member

Great work on the dev environment setup here. It'll be a huge help to have a solid foundation others can work atop. Code quality is overall excellent (clean shellcheck, good error handling, comprehensive docs).

A few items to address:

  1. World writable directories should be avoided if possible. In build/scripts/dev-preflight-check.sh and docs/PODMAN_DEVELOPMENT.md, chmod 777 is used. Preferably the directory can stay 0755 (or 0775 if needed). For handling selinux, we can use :z flag on the volume mount or use --security-opt label=disable (which is best practice for rootless podman).

  2. Add confirmation for sudo rm -rf. In Makefile (dev-down and dev-clean). Too easy to accidentally nuke data (especially through symlinks potentially). Maybe only clean data in dev-clean? podman unshare rm -rf might be a better option, too.

Nice to haves (perhaps just file issues w/ "help wanted" tag & others can jump in?):

  • Could add resource limits in podman-compose.yml for containers

Overall a very solid PR and with the couple quick fixes above, I'll approve and we can merge.

@jsco2t
Copy link
Contributor Author

jsco2t commented Dec 19, 2025

Great work on the dev environment setup here. It'll be a huge help to have a solid foundation others can work atop. Code quality is overall excellent (clean shellcheck, good error handling, comprehensive docs).

A few items to address:

1. World writable directories should be avoided if possible. In `build/scripts/dev-preflight-check.sh` and `docs/PODMAN_DEVELOPMENT.md`, `chmod 777` is used. Preferably the directory can stay 0755 (or 0775 if needed). For handling selinux, we can use `:z` flag on the volume mount or use `--security-opt label=disable` (which is best practice for rootless podman).

2. Add confirmation for `sudo rm -rf`. In Makefile (dev-down and dev-clean). Too easy to accidentally nuke data (especially through symlinks potentially). Maybe only clean data in dev-clean? `podman unshare rm -rf` might be a better option, too.

Nice to haves (perhaps just file issues w/ "help wanted" tag & others can jump in?):

* Could add resource limits in podman-compose.yml for containers

Overall a very solid PR and with the couple quick fixes above, I'll approve and we can merge.

Thanks for the review @NeilHanlon! I addressed #1 and #2 above. I agree that using help wanted issues for the resource limits idea is a good call.

Copy link
Member

@NeilHanlon NeilHanlon left a comment

Choose a reason for hiding this comment

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

LGTM! Thank you very much.

@NeilHanlon NeilHanlon merged commit 6f3c6b5 into rocky-linux:main Jan 12, 2026
@jsco2t jsco2t deleted the local-dev-env branch January 12, 2026 22:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants