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

Tests for Docker from arg not a upstream target #15874

Merged
merged 3 commits into from
Jun 24, 2022

Conversation

kaos
Copy link
Member

@kaos kaos commented Jun 18, 2022

Add tests for #15585

Also improves the base image tags detection when using build ARGs.

kaos added 3 commits June 18, 2022 08:38
# Rust tests and lints will be skipped. Delete if not intended.
[ci skip-rust]

# Building wheels and fs_util will be skipped. Delete if not intended.
[ci skip-build-wheels]
Also improves the base image tags detection when using build ARGs.
@kaos kaos added the category:internal CI, fixes for not-yet-released features, etc. label Jun 18, 2022
@kaos kaos requested a review from Eric-Arellano June 18, 2022 08:14
@kaos
Copy link
Member Author

kaos commented Jun 24, 2022

Bump @Eric-Arellano

Copy link
Contributor

@Eric-Arellano Eric-Arellano left a comment

Choose a reason for hiding this comment

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

Thanks! I'm not following the changes to production code -- maybe update the PR description to describe what they are for?

@@ -4,8 +4,10 @@
from __future__ import annotations
Copy link
Contributor

Choose a reason for hiding this comment

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

Are there changes to this file, or it's only moving around code?

Copy link
Member Author

@kaos kaos left a comment

Choose a reason for hiding this comment

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

Mostly refactorings and new tests, except one if block I've called out.

stage_tags = (tag.split(maxsplit=1) for tag in dockerfile_info.version_tags)
tags_values: dict[str, str] = {}
for idx, (stage, tag) in enumerate(stage_tags):
if tag.startswith("build-arg:"):
Copy link
Member Author

Choose a reason for hiding this comment

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

This if block is new.

Copy link
Contributor

Choose a reason for hiding this comment

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

What is it for?

Copy link
Member Author

Choose a reason for hiding this comment

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

It is to support picking up the image tag for a FROM image when using a build arg. See the test here https://github.com/pantsbuild/pants/pull/15874/files#diff-1abf5f4e44f1392638e34794a929bb6cd29b2fb6d4f08913fb41d75e726804a0R258-R286

stage_tags = (tag.split(maxsplit=1) for tag in dockerfile_info.version_tags)
tags_values: dict[str, str] = {}
for idx, (stage, tag) in enumerate(stage_tags):
if tag.startswith("build-arg:"):
Copy link
Contributor

Choose a reason for hiding this comment

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

What is it for?

@kaos kaos merged commit e4bf4d7 into pantsbuild:main Jun 24, 2022
@kaos kaos deleted the docker_from_arg_not_target branch June 24, 2022 19:49
wisechengyi added a commit that referenced this pull request Jun 26, 2022
### Internal (put these in a PR comment for review, not the release notes)

* Bump uuid from 1.1.1 to 1.1.2 in /src/rust/engine ([#15832](#15832))

* Tests for Docker from arg not a upstream target ([#15874](#15874))

* Fix outstanding todo for moved fields defaults support. ([#15923](#15923))

* Move generic debug adapter settings to dedicated subsystem ([#15928](#15928))

* Prepare `2.12.0rc3`. ([#15913](#15913))

* Prepare `2.11.1rc3`. ([#15912](#15912))

* Upgrade default mypy to 0.961 and default pylint to v2.13.9 ([#15886](#15886))

* Bump clap from 3.2.4 to 3.2.6 in /src/rust/engine ([#15909](#15909))

* Bump indexmap from 1.8.2 to 1.9.1 in /src/rust/engine ([#15894](#15894))

* Bump time from 0.3.9 to 0.3.11 in /src/rust/engine ([#15895](#15895))

* Bump tower-service from 0.3.1 to 0.3.2 in /src/rust/engine ([#15896](#15896))

* Bump crossbeam-channel from 0.5.4 to 0.5.5 in /src/rust/engine ([#15893](#15893))

* [internal] remove TestCoursierWrapper ([#15902](#15902))

* Silence `[scala-infer].force_add_siblings_as_dependencies` deprecation. ([#15898](#15898))

* Add unit tests to GraphQL queries ([#15792](#15792))

* Release script fixups ([#15875](#15875))

* [internal] jvm: port remaining tests to use test lockfiles ([#15870](#15870))

* Bump to 2.13.0a0 ([#15871](#15871))

* Add `@alonsodomin` to maintainers ([#15869](#15869))

* Scala parser improvements ([#15839](#15839))

* Refactor valid field aliases calculation for targets into a classmethod for easier re-use. ([#15861](#15861))

* Update Media page with Pycon ([#15852](#15852))

* Use Readme.com's new Markdown syntax ([#15845](#15845))

* [internal] better align test JVM lockfile support with pytest concepts ([#15804](#15804))

* Fix broken `engine_error` testutil decorator. ([#15818](#15818))

* Add `description_of_origin` for Docker address parsing ([#15814](#15814))

* Use `MultiGet` in Go rule ([#15838](#15838))

* Switch from warn to warning ([#15837](#15837))

* Bump clap from 3.1.18 to 3.2.4 in /src/rust/engine ([#15834](#15834))

* Bump reqwest from 0.11.10 to 0.11.11 in /src/rust/engine ([#15831](#15831))

* Bump strum from 0.24.0 to 0.24.1 in /src/rust/engine ([#15833](#15833))

* Bump strum_macros from 0.24.0 to 0.24.1 in /src/rust/engine ([#15835](#15835))

* Remove flake8-pantsbuild plugin ([#15830](#15830))

* go: support third-party package embeds ([#15827](#15827))

* Move `gshuflin` to Maintainers Emeritus ([#15828](#15828))

* Adds current contents of readme.com docs to repo and adds notes on how to sync. ([#15810](#15810))

* Remove unnecessary `WrappedNode` method indirection ([#15813](#15813))

* Handle anchors in doc_url() correctly. ([#15812](#15812))

* Move the macOS ARM64 build job into the existing test workflows. ([#15805](#15805))

* Add Lablup to users list. ([#15807](#15807))

* Add `description_of_origin` for several places finding Addresses ([#15797](#15797))

* [internal] Register `platform_specific_behavior` marker with Pytest ([#12679](#12679))

* Bump http from 0.2.7 to 0.2.8 in /src/rust/engine ([#15780](#15780))

* Update the `notify` crate. ([#15783](#15783))

* Bump tokio-stream from 0.1.8 to 0.1.9 in /src/rust/engine ([#15777](#15777))

* Bump indexmap from 1.8.1 to 1.8.2 in /src/rust/engine ([#15778](#15778))

* Bump uuid from 1.0.0 to 1.1.1 in /src/rust/engine ([#15779](#15779))

* Bump hyper from 0.14.18 to 0.14.19 in /src/rust/engine ([#15781](#15781))

* Update `crossbeam-utils` to `0.8.8`. ([#15782](#15782))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
category:internal CI, fixes for not-yet-released features, etc.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants