diff --git a/.cloudbuild.yaml b/.cloudbuild.yaml index 8a736da028d..1421ad9f23e 100644 --- a/.cloudbuild.yaml +++ b/.cloudbuild.yaml @@ -13,6 +13,21 @@ # limitations under the License. steps: + +# Build the Python SDK +- name: 'debian' + entrypoint: '/bin/bash' + args: ['-c', 'apt-get update -y; apt-get install --no-install-recommends -y -q default-jdk wget python python-setuptools; wget http://central.maven.org/maven2/io/swagger/swagger-codegen-cli/2.3.1/swagger-codegen-cli-2.3.1.jar -O /tmp/swagger-codegen-cli.jar;cd /workspace/sdk/python;./build.sh /workspace/kfp.tar.gz'] + id: 'preparePythonSDK' +- name: 'gcr.io/cloud-builders/gsutil' + args: ['cp', '/workspace/kfp.tar.gz', 'gs://$PROJECT_ID/builds/$COMMIT_SHA/kfp.tar.gz'] + id: 'copyPythonSDK' + waitFor: ['preparePythonSDK'] +- name: 'gcr.io/cloud-builders/gsutil' + args: ['cp', '/workspace/kfp.tar.gz', 'gs://$PROJECT_ID/builds/latest/kfp.tar.gz'] + id: 'copyPythonSDKToLatest' + waitFor: ['preparePythonSDK'] + # Build the pipeline system images and bootstrapper - name: 'debian' entrypoint: '/bin/bash' @@ -29,6 +44,7 @@ steps: '--build-arg', 'COMMIT_SHA=$COMMIT_SHA', '-f', '/workspace/backend/Dockerfile', '/workspace'] id: 'buildApiServer' + waitFor: ['copyPythonSDK'] - name: 'gcr.io/cloud-builders/docker' args: ['build', '-t', 'gcr.io/$PROJECT_ID/scheduledworkflow:$COMMIT_SHA', '-f', '/workspace/backend/Dockerfile.scheduledworkflow', '/workspace'] @@ -58,7 +74,6 @@ steps: id: 'copyBootstrapperYAMLToLatest' waitFor: ['prepareBootstrapperYAML'] - # Copy the uninstaller config - name: 'debian' entrypoint: '/bin/bash' diff --git a/.release.cloudbuild.yaml b/.release.cloudbuild.yaml index c8934e4459b..15f4a0af867 100644 --- a/.release.cloudbuild.yaml +++ b/.release.cloudbuild.yaml @@ -103,6 +103,19 @@ steps: id: 'copyUninstallerYAMLToLatest' waitFor: ['prepareUninstallerYAML'] +# Copy the Python SDK +- name: 'gcr.io/cloud-builders/gsutil' + args: ['cp', 'gs://$PROJECT_ID/builds/$COMMIT_SHA/kfp.tar.gz', '/workspace/'] + id: 'copyPythonSDKLocal' +- name: 'gcr.io/cloud-builders/gsutil' + args: ['cp', '/workspace/kfp.tar.gz', 'gs://ml-pipeline/release/$TAG_NAME/kfp.tar.gz'] + id: 'copyPythonSDK' + waitFor: ['copyPythonSDKLocal'] +- name: 'gcr.io/cloud-builders/gsutil' + args: ['cp', '/workspace/kfp.tar.gz', 'gs://ml-pipeline/release/latest/kfp.tar.gz'] + id: 'copyPythonSDKToLatest' + waitFor: ['copyPythonSDKLocal'] + # Pull and retag the images for the Dataflow-based pipeline components - name: 'gcr.io/cloud-builders/docker' args: ['pull', 'gcr.io/$PROJECT_ID/ml-pipeline-dataflow-tf-predict:$COMMIT_SHA']