cloud-sql-perftest/hub.yaml (88 lines of code) (raw):

version: 1 kind: stack meta: name: Cloud SQL with performance testing brief: Cloud SQL with performance testing components: - name: cloud-sql source: dir: components/cloud-sql git: remote: https://github.com/agilestacks/google-components.git subDir: cloud-sql - name: k6-sql-load-test source: dir: components/k6-sql-load-test git: remote: https://github.com/agilestacks/google-components.git subDir: k6-sql-load-test extensions: init: - gcp - .hub/get-info configure: - gcp - env requires: - gcp lifecycle: verbs: - deploy - undeploy order: - cloud-sql - k6-sql-load-test parameters: - name: hub.sandboxDir fromEnv: SANDBOX_DIR - name: hub.sandboxCommit fromEnv: SANDBOX_COMMIT - name: hub.userAccount fromEnv: USER_ACCOUNT - name: projectId fromEnv: GOOGLE_PROJECT - name: dns.domain fromEnv: HUB_DOMAIN_NAME - name: stateBucketName fromEnv: HUB_STATE_BUCKET - name: hubStackName fromEnv: HUB_STACK_NAME - name: cloud.region fromEnv: GOOGLE_REGION value: us-central1 - name: cloud.zone fromEnv: GOOGLE_ZONE value: us-central1-a - name: component.cloudSql parameters: - name: name value: ${hubStackName} - name: version value: MYSQL_5_7 - name: dbName value: ${hubStackName} - name: dbUser value: ${hubStackName}-user - name: password fromEnv: DB_PASSWORD - name: component.k6SQLloadTest parameters: - name: kind value: mysql - name: dbHost kind: link value: ${component.cloudSql.publicIp} - name: dbName value: ${component.cloudSql.dbName} - name: dbUser value: ${component.cloudSql.dbUser} - name: password value: ${component.cloudSql.password} - name: testDuration value: 100s - name: numberOfUsers value: 100 outputs: - name: component.cloudSql.dbName - name: component.cloudSql.dbUser - name: component.cloudSql.publicIp