Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update Dockerfile: add labels and bats org libs #674

Merged

Conversation

brokenpip3
Copy link
Contributor

Fix #518

  • Add the most important opencontainer labels
  • Do not use root as user
  • Add bats-support, file, detik and assert libs

Copy link
Member

@martin-schulze-vireso martin-schulze-vireso left a comment

Choose a reason for hiding this comment

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

I'd like to use this as an opportunity to get some integration tests between the current bats-core (master) version and the libraries going.

Dockerfile Outdated Show resolved Hide resolved
Dockerfile Outdated Show resolved Hide resolved
@brokenpip3
Copy link
Contributor Author

I have a working solution, will finalize and push later today

Dockerfile Outdated Show resolved Hide resolved
@brokenpip3 brokenpip3 marked this pull request as ready for review November 17, 2022 21:52
@brokenpip3 brokenpip3 requested a review from a team as a code owner November 17, 2022 21:52
@martin-schulze-vireso martin-schulze-vireso added this to the 1.9.0 milestone Nov 22, 2022
brokenpip3 added a commit to brokenpip3/bats-core that referenced this pull request Jan 5, 2023
brokenpip3 added a commit to brokenpip3/bats-core that referenced this pull request Jan 5, 2023
brokenpip3 added a commit to brokenpip3/bats-core that referenced this pull request Jan 5, 2023
brokenpip3 added a commit to brokenpip3/bats-core that referenced this pull request Jan 5, 2023
martin-schulze-vireso added a commit to brokenpip3/bats-core that referenced this pull request Jan 6, 2023
martin-schulze-vireso added a commit to brokenpip3/bats-core that referenced this pull request Jan 6, 2023
@martin-schulze-vireso martin-schulze-vireso force-pushed the dockerfile-bats-libs branch 6 times, most recently from aa07be7 to 652fe4d Compare January 7, 2023 12:33
There is no single right UID but 1001/115 seems to be GHA's Ubuntu default
Introducing this may be a breaking change for some.
@martin-schulze-vireso
Copy link
Member

I decided to remove the unprivileged user from the Dockerfile. There are two main reasons for that:

  1. this is going into a minor release and may well be a breaking change. (Furthermore, the content of this PR is not really about introducing this security feature.)
  2. Dealing with the restricted user in a volume mount is not easy (see the many bats-file test failures above). I already prepared a new entrypoint.sh that would transfer the UID/GID of the volume mounted under /code to the bats user but I feel this automatism somewhat reduces the idea of restricting the user in the first place. I believe this must be thought through a bit more. Maybe @sublimino has some ideas on this?

@brokenpip3 brokenpip3 changed the title Update Dockerfile: add labels, do not use root user, add bats org libs Update Dockerfile: add labels and bats org libs Jan 8, 2023
@martin-schulze-vireso martin-schulze-vireso force-pushed the dockerfile-bats-libs branch 3 times, most recently from b3bed52 to 502ff17 Compare January 8, 2023 23:07
@martin-schulze-vireso
Copy link
Member

Thanks for your contribution.

@brokenpip3
Copy link
Contributor Author

Thanks for your contribution.

Sure yw

clrpackages pushed a commit to clearlinux-pkgs/bats that referenced this pull request Feb 14, 2023
ADoyle (1):
      fix: skip failed in setup_file

Adam Harvey (1):
      chore(docs): Fix typo

Henning Schild (2):
      installation.rst: add Gentoo Linux as a distro to ship bats
      installation.rst: add Debian Linux as a distro to ship bats

Jesus Briales (1):
      Show file path URI in tracing messages

Martin Schulze (64):
      Clarify documentation
      Docs: Add Fedora and OpenSUSE packages
      Add changelog entry for #659
      Move support matrix into own document
      Docs: Update printing from free code
      Sync output behavoir of free code in exec-file to exec-test
      Add changelog entry for #671
      Fix messed up PR #670
      Add --file-reference-format/BATS_FILE_REFERENCE_FORMAT
      Add changelog entry for #665
      Work around missing realpath in MacOS
      Rename options
      Rename file reference format to line reference format
      Add man page documentation
      Add changelog entry for #673
      Docs: When not to use run
      run: Print output/stderr on exit code errors
      Add changelog entry for #366
      Add special tag bats:focus
      Override exit code in focus mode unless disabled
      Add online docs for bats:focus
      Add offline docs for tagging and bats:focus
      Fix shellcheck issues
      Add changelog entry for #679
      Fix tests
      Add test
      Reuse filtered list for skip output
      Add changelog entry for #687
      Forward skip to exec-test
      Fix out of order output in parallel case
      Add test via Dockerfile
      Warn if runlog can't be created
      CI: Add test for official docker image
      Fix shellcheck
      Add changelog entry for #674
      Fix expand_path for one element paths (like /code)
      Also test libraries
      Make volume mounts work in default case
      Improve output
      Docker: Undo unprivileged user for now
      Add changelog entry for #691
      Add missing dependencies for bats-file
      Install libs in correct default location
      Test and fix #690, bats finishing before report formatter
      Ensure that report-formatter errors are visible
      Fix shellcheck warnings
      Fix shellcheck warnings
      Fix more shellcheck warnings
      Fix executable not detected on cygwin
      Don't use int comparison for strings
      fix shellcheck warning
      Fix loop
      Fix linenumbers
      Bail on broken pipe
      Fix unexpected EOF
      Fix shellcheck
      Fix broken pipe errors
      Add changelog entry for #692
      Don't care about exact exit code
      Make test more robust against unpredictable order
      CI: Add more output
      Fix non executable report formatter under windows
      Fix shebang
      feat: release Bats v1.9.0

Paul Conner (2):
      Stricter `parallel` Exists Check
      * Adding improved parallel check into libexec/bats-core/bats-exec-suite.

brokenpip3 (7):
      add labels, do not use root, start to add libs
      fix docker hub label
      add utility to download and install the bats libs
      fix duplicate exit trap bats-core/bats-core#674 (comment)
      make if more readable, ref: bats-core/bats-core#674 (comment)
      fix(install_libs) move check param to the top, ref bats-core/bats-core#674 (comment)
      fix(dockerfile): add arg with defaults instead of hardcoding values
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.

Include all support libraries in the Docker image
2 participants