pipelines/third_party
James Liu eaec515812
chore(mlmd): Upgrade ML Metadata to 1.14.0. (#9856)
* chore(mlmd): Upgrade ML Metadata to 1.14.0.

* fix requirements, skip visualization.

* go mod tidy

* mlmd new enum in frontend

* mlmd license

* mlmd license again, using the failure test diff

* again
2023-08-22 17:18:09 +00:00
..
argo chore: upgrade to Argo v3.3.10 (#9336) 2023-05-08 08:38:55 +00:00
metadata_envoy Assigned copyright to the project authors (#5587) 2021-05-05 13:53:22 +08:00
minio Assigned copyright to the project authors (#5587) 2021-05-05 13:53:22 +08:00
ml-metadata chore(mlmd): Upgrade ML Metadata to 1.14.0. (#9856) 2023-08-22 17:18:09 +00:00
OWNERS chore: remove Bobgy from OWNERS (#7195) 2022-01-25 08:11:28 +08:00
README.md Add third party license + source code to argo and minio images to comply with their license (#2201) 2019-09-30 22:39:32 -07:00
download_source.sh Assigned copyright to the project authors (#5587) 2021-05-05 13:53:22 +08:00
license.txt chore: Add more licenses for cache-deployer image (#9432) 2023-05-16 17:42:00 +00:00

README.md

How to release third party images

Release a new third party image version

  1. Edit third_party/$LIBRARY/Dockerfile
  2. Change the line from IMAGE_NAME:TAG_NAME to from IMAGE_NAME:NEW_TAG_NAME
  3. Edit third_party/$LIBRARY/release.sh
  4. Change TAG to NEW_TAG_NAME.
  5. Commit and ask someone for review
  6. Run the following (you need to have storage access to ml-pipeline project)
    cd $KFP_SRC
    ./third_party/$LIBRARY/release.sh
    
  7. Make a PR that
    • changes all image references in .release.cloudbuild.yaml
    • changes all image references in manifests

How to build

cd $KFP_SRC
gcloud builds submit --config third_party/argo/cloudbuild.yaml . --substitutions=TAG_NAME="RELEASE_TAG_NAME_HERE"
gcloud builds submit --config third_party/minio/cloudbuild.yaml . --substitutions=TAG_NAME="RELEASE_TAG_NAME_HERE"

or you can build locally using docker too like the following

cd $KFP_SRC
docker build -t $IMAGE_NAME:$TAG -f third_party/minio/Dockerfile .

Verify your built images are good

Run the following command to start an interactive shell in a new container of the image (the image must have shell installed to be able to run it)

docker run -it --entrypoint sh $IMAGE_NAME

Or if the image doesn't have a complete OS (like argoproj/workflow-controller)

docker save nginx > nginx.tar
tar -xvf nginx.tar

This saves layers of the image to a tarball that you can extract and see.

Credits to: https://stackoverflow.com/questions/44769315/how-to-see-docker-image-contents

Release to gcr.io/ml-pipeline

(This has been automated by third_party/release.sh)

  1. First build images in your own project
  2. Use this gcloud command to retag your images to gcr.io/ml-pipeline
  3. When choosing the new tag, use the same text as the original release tag of the third party image