Skip to content

Conversation

@olevski
Copy link
Member

@olevski olevski commented Apr 16, 2025

Also makes a minor modification to the logging on the Makefile and the use of env vars for more control on what is built.

Also makes a minor modification to the logging on the Makefile and the
use of env vars for more control on what is built.
@olevski olevski requested a review from SalimKayal April 16, 2025 15:35
Copy link
Collaborator

@SalimKayal SalimKayal left a comment

Choose a reason for hiding this comment

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

I'm not sure whether we should un-pin packages that live outside of this repository, this counts for vscodium too. Also should the versions in the frontends buildpack get un-pinned too ?


[[buildpacks]]
uri = "docker://ghcr.io/swissdatasciencecenter/vscodium-buildpack/vscodium:0.2"
version = "0.2.0"
Copy link
Collaborator

Choose a reason for hiding this comment

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

I'm not sure we should un-pin buildpacks that do not live in this repo

Copy link
Member Author

Choose a reason for hiding this comment

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

But the tag for all of them is already in the uri. So why have the tag in two places?

[[buildpacks]]
uri = "docker://gcr.io/paketo-buildpacks/go:4.13.11"
version = "4.13.11"
id = "paketo-buildpacks/go"
Copy link
Collaborator

Choose a reason for hiding this comment

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

same as above

Copy link
Member Author

Choose a reason for hiding this comment

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

But the tag is already in the uri. So why have the tag in two places?

[[buildpacks]]
uri = "docker://gcr.io/paketo-buildpacks/nodejs:7.4.0"
version = "7.4.0"
id = "paketo-buildpacks/nodejs"
Copy link
Collaborator

Choose a reason for hiding this comment

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

here too

Copy link
Member Author

Choose a reason for hiding this comment

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

Tag is in the uri

[[buildpacks]]
uri = "docker://gcr.io/paketo-buildpacks/python:2.24.3"
version = "2.24.3"
id = "paketo-buildpacks/python"
Copy link
Collaborator

Choose a reason for hiding this comment

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

and there

Copy link
Member Author

Choose a reason for hiding this comment

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

Tag is in the uri

version = "0.0.1"
[[order.group]]
id = "paketo-buildpacks/go"
version = "4.13.11"
Copy link
Collaborator

Choose a reason for hiding this comment

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

same as above

Copy link
Member Author

Choose a reason for hiding this comment

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

We have this though:

[[buildpacks]]
  uri = "docker://gcr.io/paketo-buildpacks/go:4.13.11"
  id = "paketo-buildpacks/go"

[[buildpacks]]
  uri = "docker://gcr.io/paketo-buildpacks/nodejs:7.4.0"
  id = "paketo-buildpacks/nodejs"

[[buildpacks]]
  uri = "docker://gcr.io/paketo-buildpacks/python:2.24.3"
  id = "paketo-buildpacks/python"

[[extensions]]
  id = "renku/renku"
  uri = "../../extensions/renku"

[lifecycle]
  version = "0.20.6"

[[order]]

  [[order.group]]
    id = "renku/frontends"
  [[order.group]]
    id = "paketo-buildpacks/go"
  [[order.group]]
    id = "renku/kernel-installer"
    optional = true

So the tag of the buildpack is already specified in the buildpacks section. In the order we just use the id to refer to that same buildpack. So the versions in the builder are not needed.

version = "0.0.1"
[[order.group]]
id = "paketo-buildpacks/python"
version = "2.24.3"
Copy link
Collaborator

Choose a reason for hiding this comment

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

and there

version = "0.0.1"
[[order.group]]
id = "paketo-buildpacks/nodejs"
version = "7.4.0"
Copy link
Collaborator

Choose a reason for hiding this comment

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

and here

@olevski olevski requested a review from SalimKayal April 17, 2025 07:46
@SalimKayal
Copy link
Collaborator

Thanks for your remark. It prompted me to check whether there is an actual reason for the version numbers in the spec. I learned something in the process.

It is used for cache invalidation at build time
https://github.com/buildpacks/spec/blob/main/buildpack.md#layer-types

and for layer re-use
https://github.com/buildpacks/spec/blob/main/buildpack.md#reusing-layers

@olevski
Copy link
Member Author

olevski commented Apr 17, 2025

@SalimKayal do you think then it is better if we have stuff like this?

  uri = "docker://gcr.io/paketo-buildpacks/nodejs"
  version = "7.4.0"

Because in this case at least it is not repeated twice.

@SalimKayal
Copy link
Collaborator

Good, question, does it pull the correct image ?

@olevski olevski marked this pull request as draft April 25, 2025 14:33
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.

3 participants