ftl/integration_tests/util.py (38 lines of code) (raw):

"""A script to generate a cloudbuild yaml.""" import os # Add directories for new tests here. TEST_DIRS = [ 'gcp_build_test', 'packages_test', 'packages_lock_test', 'destination_test', 'npmrc_test' ] _ST_IMAGE = 'gcr.io/gcp-runtimes/container-structure-test:v1.8.0' INITIAL_CLOUDBUILD_YAML = { 'steps': [ # We need to chmod in some cases for permissions. { 'name': 'ubuntu', 'args': ['chmod', 'a+rx', '-R', '/workspace'], 'id': 'chmod', } ] } def run_test_steps(builder_name, full_name, directory, args): return [ # First build the image { 'name': 'bazel/ftl:%s' % builder_name, 'args': args, 'id': 'build-image-%s' % full_name, }, # Then pull it from the registry { 'name': 'gcr.io/cloud-builders/docker', 'args': ['pull', full_name], 'id': 'pull-image-%s' % full_name, }, # Then test it. { 'name': _ST_IMAGE, 'args': [ 'test', '--image', full_name, '--config', os.path.join(directory, 'structure_test.yaml') ], 'id': 'test-image%s' % full_name } ]