cobalt/test-harness/README.md

281 строка
12 KiB
Markdown
Исходник Обычный вид История

Erisch/features/devops/integration tests (#75) * # This is a combination of 99 commits. # This is the 1st commit message: Adding docker test base image # This is the commit message #2: Adding test files # This is the commit message #3: testing # This is the commit message #4: Added folder # This is the commit message #5: Added folder # This is the commit message #6: Azure Devops CI Build Pipeline (#67) * Adding azure devops build pipeline * Adding README * Adding azure build badge # This is the commit message #7: saving latest tests # This is the commit message #8: Adding docker test base image (#68) # This is the commit message #9: EOD checkin # This is the commit message #10: posting latest # This is the commit message #11: eod commits # This is the commit message #12: eod commit # This is the commit message #13: refactored test directory structure # This is the commit message #14: Refactored build # This is the commit message #15: Adding hello world azure simple app # This is the commit message #16: Adding hello world azure simple app # This is the commit message #17: refactoring test harness # This is the commit message #18: refactoring test harness # This is the commit message #19: checking latest # This is the commit message #20: committing latest # This is the commit message #21: checking in latest changes # This is the commit message #22: Checking in latest progress # This is the commit message #23: applying final touches before PR submission # This is the commit message #24: updating azure keyvault secret names # This is the commit message #25: Checking in latest progress # This is the commit message #26: pushing latest pipeline definition # This is the commit message #27: updating build pipeline variable format # This is the commit message #28: updating build pipeline variable format # This is the commit message #29: cleaning up build variables # This is the commit message #30: adding minor changes to azure build pipeline # This is the commit message #31: updating azure keyvault secret names # This is the commit message #32: updating azure keyvault secret names # This is the commit message #33: fixing docker login azdo step # This is the commit message #34: fixing docker login azdo step # This is the commit message #35: fixing docker login azdo step # This is the commit message #36: fixing docker login azdo step # This is the commit message #37: updating build pipeline variables # This is the commit message #38: updating build pipeline variables # This is the commit message #39: updating build pipeline variables # This is the commit message #40: updating build pipeline variables # This is the commit message #41: updating build pipeline variables # This is the commit message #42: updating build pipeline variables # This is the commit message #43: applying fix to git diff script # This is the commit message #44: applying fix to git diff script # This is the commit message #45: applying fix to git diff script # This is the commit message #46: applying fix to git diff script # This is the commit message #47: applying fix to git diff script # This is the commit message #48: resolving pipeline bug # This is the commit message #49: fixing build error # This is the commit message #50: fixing build error # This is the commit message #51: fixing build error # This is the commit message #52: fixing build error # This is the commit message #53: fixing build error # This is the commit message #54: fixing build error # This is the commit message #55: fixing build error # This is the commit message #56: fixing build error # This is the commit message #57: fixing build error # This is the commit message #58: fixing build error # This is the commit message #59: fixing build error # This is the commit message #60: fixing build error # This is the commit message #61: fixing build error # This is the commit message #62: fixing build error # This is the commit message #63: fixing build error # This is the commit message #64: fixing build error # This is the commit message #65: fixing build error # This is the commit message #66: fixing build error # This is the commit message #67: fixing build error # This is the commit message #68: fixing build error # This is the commit message #69: fixing build error # This is the commit message #70: fixing build error # This is the commit message #71: fixing build error # This is the commit message #72: fixing build error # This is the commit message #73: trying acr fix # This is the commit message #74: latest changes # This is the commit message #75: removing docker dependency on azure devops pipeline # This is the commit message #76: removing docker dependency on azure devops pipeline # This is the commit message #77: removing docker dependency on azure devops pipeline # This is the commit message #78: removing docker dependency on azure devops pipeline # This is the commit message #79: removing docker dependency on azure devops pipeline # This is the commit message #80: removing docker dependency on azure devops pipeline # This is the commit message #81: removing docker dependency on azure devops pipeline # This is the commit message #82: removing docker dependency on azure devops pipeline # This is the commit message #83: removing docker dependency on azure devops pipeline # This is the commit message #84: removing docker dependency on azure devops pipeline # This is the commit message #85: removing docker dependency on azure devops pipeline # This is the commit message #86: removing docker dependency on azure devops pipeline # This is the commit message #87: removing docker dependency on azure devops pipeline # This is the commit message #88: removing docker dependency on azure devops pipeline # This is the commit message #89: removing docker dependency on azure devops pipeline # This is the commit message #90: removing docker dependency on azure devops pipeline # This is the commit message #91: removing docker dependency on azure devops pipeline # This is the commit message #92: removing docker dependency on azure devops pipeline # This is the commit message #93: removing docker dependency on azure devops pipeline # This is the commit message #94: removing docker dependency on azure devops pipeline # This is the commit message #95: removing docker dependency on azure devops pipeline # This is the commit message #96: removing docker dependency on azure devops pipeline # This is the commit message #97: removing docker dependency on azure devops pipeline # This is the commit message #98: final commit including resource name randomization # This is the commit message #99: Add provider to configure az infra for Terraform * resolving merge conflicts for squash Updated documentation based on review comments Integrate review comments for documentation. Add usage example for each of the providers Adding environment template descriptions removing go version var from azdo pipeline as it's unused removing unused setup folder adding more verbose logging for azure devops failure fixing pull request branch name resolution bug fixing pull request branch name resolution bug addressing nick's pr comments documenting script and docker images cleaning up required env var check fixing base branch bug Added service plan terraform templates to Azure Adding tags for resources Integrate review comments to add random id to name Add tags, capacity and reserved for service plan Minor Fixes for documentation Integrate review comments related to resource naming Remove Optional and Required in variables.tf Update variables.tf Update Service Plan Tier to Isolated squaching commits applied base image suggestions from nick * squashing commits and slimming down the build image * removing go* path from azure devops pipeline as we removed go mods * refactoring our azure devops pipeline so it's aligned with the local test runner * fixing azure devops pipeline bug * fixing base image build variable reference bug * Addressing nick's PR comments
2019-04-26 00:22:25 +03:00
# Resource Deployment Testing in Cobalt
## Summary
Update main project readme (#79) * # This is a combination of 99 commits. # This is the 1st commit message: Adding docker test base image # This is the commit message #2: Adding test files # This is the commit message #3: testing # This is the commit message #4: Added folder # This is the commit message #5: Added folder # This is the commit message #6: Azure Devops CI Build Pipeline (#67) * Adding azure devops build pipeline * Adding README * Adding azure build badge # This is the commit message #7: saving latest tests # This is the commit message #8: Adding docker test base image (#68) # This is the commit message #9: EOD checkin # This is the commit message #10: posting latest # This is the commit message #11: eod commits # This is the commit message #12: eod commit # This is the commit message #13: refactored test directory structure # This is the commit message #14: Refactored build # This is the commit message #15: Adding hello world azure simple app # This is the commit message #16: Adding hello world azure simple app # This is the commit message #17: refactoring test harness # This is the commit message #18: refactoring test harness # This is the commit message #19: checking latest # This is the commit message #20: committing latest # This is the commit message #21: checking in latest changes # This is the commit message #22: Checking in latest progress # This is the commit message #23: applying final touches before PR submission # This is the commit message #24: updating azure keyvault secret names # This is the commit message #25: Checking in latest progress # This is the commit message #26: pushing latest pipeline definition # This is the commit message #27: updating build pipeline variable format # This is the commit message #28: updating build pipeline variable format # This is the commit message #29: cleaning up build variables # This is the commit message #30: adding minor changes to azure build pipeline # This is the commit message #31: updating azure keyvault secret names # This is the commit message #32: updating azure keyvault secret names # This is the commit message #33: fixing docker login azdo step # This is the commit message #34: fixing docker login azdo step # This is the commit message #35: fixing docker login azdo step # This is the commit message #36: fixing docker login azdo step # This is the commit message #37: updating build pipeline variables # This is the commit message #38: updating build pipeline variables # This is the commit message #39: updating build pipeline variables # This is the commit message #40: updating build pipeline variables # This is the commit message #41: updating build pipeline variables # This is the commit message #42: updating build pipeline variables # This is the commit message #43: applying fix to git diff script # This is the commit message #44: applying fix to git diff script # This is the commit message #45: applying fix to git diff script # This is the commit message #46: applying fix to git diff script # This is the commit message #47: applying fix to git diff script # This is the commit message #48: resolving pipeline bug # This is the commit message #49: fixing build error # This is the commit message #50: fixing build error # This is the commit message #51: fixing build error # This is the commit message #52: fixing build error # This is the commit message #53: fixing build error # This is the commit message #54: fixing build error # This is the commit message #55: fixing build error # This is the commit message #56: fixing build error # This is the commit message #57: fixing build error # This is the commit message #58: fixing build error # This is the commit message #59: fixing build error # This is the commit message #60: fixing build error # This is the commit message #61: fixing build error # This is the commit message #62: fixing build error # This is the commit message #63: fixing build error # This is the commit message #64: fixing build error # This is the commit message #65: fixing build error # This is the commit message #66: fixing build error # This is the commit message #67: fixing build error # This is the commit message #68: fixing build error # This is the commit message #69: fixing build error # This is the commit message #70: fixing build error # This is the commit message #71: fixing build error # This is the commit message #72: fixing build error # This is the commit message #73: trying acr fix # This is the commit message #74: latest changes # This is the commit message #75: removing docker dependency on azure devops pipeline # This is the commit message #76: removing docker dependency on azure devops pipeline # This is the commit message #77: removing docker dependency on azure devops pipeline # This is the commit message #78: removing docker dependency on azure devops pipeline # This is the commit message #79: removing docker dependency on azure devops pipeline # This is the commit message #80: removing docker dependency on azure devops pipeline # This is the commit message #81: removing docker dependency on azure devops pipeline # This is the commit message #82: removing docker dependency on azure devops pipeline # This is the commit message #83: removing docker dependency on azure devops pipeline # This is the commit message #84: removing docker dependency on azure devops pipeline # This is the commit message #85: removing docker dependency on azure devops pipeline # This is the commit message #86: removing docker dependency on azure devops pipeline # This is the commit message #87: removing docker dependency on azure devops pipeline # This is the commit message #88: removing docker dependency on azure devops pipeline # This is the commit message #89: removing docker dependency on azure devops pipeline # This is the commit message #90: removing docker dependency on azure devops pipeline # This is the commit message #91: removing docker dependency on azure devops pipeline # This is the commit message #92: removing docker dependency on azure devops pipeline # This is the commit message #93: removing docker dependency on azure devops pipeline # This is the commit message #94: removing docker dependency on azure devops pipeline # This is the commit message #95: removing docker dependency on azure devops pipeline # This is the commit message #96: removing docker dependency on azure devops pipeline # This is the commit message #97: removing docker dependency on azure devops pipeline # This is the commit message #98: final commit including resource name randomization # This is the commit message #99: Add provider to configure az infra for Terraform * resolving merge conflicts for squash Updated documentation based on review comments Integrate review comments for documentation. Add usage example for each of the providers Adding environment template descriptions removing go version var from azdo pipeline as it's unused removing unused setup folder adding more verbose logging for azure devops failure fixing pull request branch name resolution bug fixing pull request branch name resolution bug addressing nick's pr comments documenting script and docker images cleaning up required env var check fixing base branch bug Added service plan terraform templates to Azure Adding tags for resources Integrate review comments to add random id to name Add tags, capacity and reserved for service plan Minor Fixes for documentation Integrate review comments related to resource naming Remove Optional and Required in variables.tf Update variables.tf Update Service Plan Tier to Isolated squaching commits applied base image suggestions from nick * squashing commits and slimming down the build image * removing go* path from azure devops pipeline as we removed go mods * refactoring our azure devops pipeline so it's aligned with the local test runner * fixing azure devops pipeline bug * fixing base image build variable reference bug * Addressing nick's PR comments * resolving issue with failed builds after completing branches merges * addressing a bug where test harness directory changes were not getting picked up by the harness * removing local echo statement * Adding directory exists check and app service container command variable * addressing nick's PR comments * adding git diff extension whitelist filter * Overhauling main project readme * Adding james to the readme * Update README.md * Updating readme from the test-harness directory
2019-05-01 00:41:53 +03:00
This section describes how to build integration and validation tests for your cobalt deployment environments using docker and the terratest modules.
Erisch/features/devops/integration tests (#75) * # This is a combination of 99 commits. # This is the 1st commit message: Adding docker test base image # This is the commit message #2: Adding test files # This is the commit message #3: testing # This is the commit message #4: Added folder # This is the commit message #5: Added folder # This is the commit message #6: Azure Devops CI Build Pipeline (#67) * Adding azure devops build pipeline * Adding README * Adding azure build badge # This is the commit message #7: saving latest tests # This is the commit message #8: Adding docker test base image (#68) # This is the commit message #9: EOD checkin # This is the commit message #10: posting latest # This is the commit message #11: eod commits # This is the commit message #12: eod commit # This is the commit message #13: refactored test directory structure # This is the commit message #14: Refactored build # This is the commit message #15: Adding hello world azure simple app # This is the commit message #16: Adding hello world azure simple app # This is the commit message #17: refactoring test harness # This is the commit message #18: refactoring test harness # This is the commit message #19: checking latest # This is the commit message #20: committing latest # This is the commit message #21: checking in latest changes # This is the commit message #22: Checking in latest progress # This is the commit message #23: applying final touches before PR submission # This is the commit message #24: updating azure keyvault secret names # This is the commit message #25: Checking in latest progress # This is the commit message #26: pushing latest pipeline definition # This is the commit message #27: updating build pipeline variable format # This is the commit message #28: updating build pipeline variable format # This is the commit message #29: cleaning up build variables # This is the commit message #30: adding minor changes to azure build pipeline # This is the commit message #31: updating azure keyvault secret names # This is the commit message #32: updating azure keyvault secret names # This is the commit message #33: fixing docker login azdo step # This is the commit message #34: fixing docker login azdo step # This is the commit message #35: fixing docker login azdo step # This is the commit message #36: fixing docker login azdo step # This is the commit message #37: updating build pipeline variables # This is the commit message #38: updating build pipeline variables # This is the commit message #39: updating build pipeline variables # This is the commit message #40: updating build pipeline variables # This is the commit message #41: updating build pipeline variables # This is the commit message #42: updating build pipeline variables # This is the commit message #43: applying fix to git diff script # This is the commit message #44: applying fix to git diff script # This is the commit message #45: applying fix to git diff script # This is the commit message #46: applying fix to git diff script # This is the commit message #47: applying fix to git diff script # This is the commit message #48: resolving pipeline bug # This is the commit message #49: fixing build error # This is the commit message #50: fixing build error # This is the commit message #51: fixing build error # This is the commit message #52: fixing build error # This is the commit message #53: fixing build error # This is the commit message #54: fixing build error # This is the commit message #55: fixing build error # This is the commit message #56: fixing build error # This is the commit message #57: fixing build error # This is the commit message #58: fixing build error # This is the commit message #59: fixing build error # This is the commit message #60: fixing build error # This is the commit message #61: fixing build error # This is the commit message #62: fixing build error # This is the commit message #63: fixing build error # This is the commit message #64: fixing build error # This is the commit message #65: fixing build error # This is the commit message #66: fixing build error # This is the commit message #67: fixing build error # This is the commit message #68: fixing build error # This is the commit message #69: fixing build error # This is the commit message #70: fixing build error # This is the commit message #71: fixing build error # This is the commit message #72: fixing build error # This is the commit message #73: trying acr fix # This is the commit message #74: latest changes # This is the commit message #75: removing docker dependency on azure devops pipeline # This is the commit message #76: removing docker dependency on azure devops pipeline # This is the commit message #77: removing docker dependency on azure devops pipeline # This is the commit message #78: removing docker dependency on azure devops pipeline # This is the commit message #79: removing docker dependency on azure devops pipeline # This is the commit message #80: removing docker dependency on azure devops pipeline # This is the commit message #81: removing docker dependency on azure devops pipeline # This is the commit message #82: removing docker dependency on azure devops pipeline # This is the commit message #83: removing docker dependency on azure devops pipeline # This is the commit message #84: removing docker dependency on azure devops pipeline # This is the commit message #85: removing docker dependency on azure devops pipeline # This is the commit message #86: removing docker dependency on azure devops pipeline # This is the commit message #87: removing docker dependency on azure devops pipeline # This is the commit message #88: removing docker dependency on azure devops pipeline # This is the commit message #89: removing docker dependency on azure devops pipeline # This is the commit message #90: removing docker dependency on azure devops pipeline # This is the commit message #91: removing docker dependency on azure devops pipeline # This is the commit message #92: removing docker dependency on azure devops pipeline # This is the commit message #93: removing docker dependency on azure devops pipeline # This is the commit message #94: removing docker dependency on azure devops pipeline # This is the commit message #95: removing docker dependency on azure devops pipeline # This is the commit message #96: removing docker dependency on azure devops pipeline # This is the commit message #97: removing docker dependency on azure devops pipeline # This is the commit message #98: final commit including resource name randomization # This is the commit message #99: Add provider to configure az infra for Terraform * resolving merge conflicts for squash Updated documentation based on review comments Integrate review comments for documentation. Add usage example for each of the providers Adding environment template descriptions removing go version var from azdo pipeline as it's unused removing unused setup folder adding more verbose logging for azure devops failure fixing pull request branch name resolution bug fixing pull request branch name resolution bug addressing nick's pr comments documenting script and docker images cleaning up required env var check fixing base branch bug Added service plan terraform templates to Azure Adding tags for resources Integrate review comments to add random id to name Add tags, capacity and reserved for service plan Minor Fixes for documentation Integrate review comments related to resource naming Remove Optional and Required in variables.tf Update variables.tf Update Service Plan Tier to Isolated squaching commits applied base image suggestions from nick * squashing commits and slimming down the build image * removing go* path from azure devops pipeline as we removed go mods * refactoring our azure devops pipeline so it's aligned with the local test runner * fixing azure devops pipeline bug * fixing base image build variable reference bug * Addressing nick's PR comments
2019-04-26 00:22:25 +03:00
Terratest is a Go library that makes it easier to write automated tests for your infrastructure code. It provides a variety of helper functions and patterns for common infrastructure testing tasks.
In addition, the cobalt test suite allows for better collaboration with embedding into CI/CD tools such as Travis or Azure DevOps Pipelines.
Update main project readme (#79) * # This is a combination of 99 commits. # This is the 1st commit message: Adding docker test base image # This is the commit message #2: Adding test files # This is the commit message #3: testing # This is the commit message #4: Added folder # This is the commit message #5: Added folder # This is the commit message #6: Azure Devops CI Build Pipeline (#67) * Adding azure devops build pipeline * Adding README * Adding azure build badge # This is the commit message #7: saving latest tests # This is the commit message #8: Adding docker test base image (#68) # This is the commit message #9: EOD checkin # This is the commit message #10: posting latest # This is the commit message #11: eod commits # This is the commit message #12: eod commit # This is the commit message #13: refactored test directory structure # This is the commit message #14: Refactored build # This is the commit message #15: Adding hello world azure simple app # This is the commit message #16: Adding hello world azure simple app # This is the commit message #17: refactoring test harness # This is the commit message #18: refactoring test harness # This is the commit message #19: checking latest # This is the commit message #20: committing latest # This is the commit message #21: checking in latest changes # This is the commit message #22: Checking in latest progress # This is the commit message #23: applying final touches before PR submission # This is the commit message #24: updating azure keyvault secret names # This is the commit message #25: Checking in latest progress # This is the commit message #26: pushing latest pipeline definition # This is the commit message #27: updating build pipeline variable format # This is the commit message #28: updating build pipeline variable format # This is the commit message #29: cleaning up build variables # This is the commit message #30: adding minor changes to azure build pipeline # This is the commit message #31: updating azure keyvault secret names # This is the commit message #32: updating azure keyvault secret names # This is the commit message #33: fixing docker login azdo step # This is the commit message #34: fixing docker login azdo step # This is the commit message #35: fixing docker login azdo step # This is the commit message #36: fixing docker login azdo step # This is the commit message #37: updating build pipeline variables # This is the commit message #38: updating build pipeline variables # This is the commit message #39: updating build pipeline variables # This is the commit message #40: updating build pipeline variables # This is the commit message #41: updating build pipeline variables # This is the commit message #42: updating build pipeline variables # This is the commit message #43: applying fix to git diff script # This is the commit message #44: applying fix to git diff script # This is the commit message #45: applying fix to git diff script # This is the commit message #46: applying fix to git diff script # This is the commit message #47: applying fix to git diff script # This is the commit message #48: resolving pipeline bug # This is the commit message #49: fixing build error # This is the commit message #50: fixing build error # This is the commit message #51: fixing build error # This is the commit message #52: fixing build error # This is the commit message #53: fixing build error # This is the commit message #54: fixing build error # This is the commit message #55: fixing build error # This is the commit message #56: fixing build error # This is the commit message #57: fixing build error # This is the commit message #58: fixing build error # This is the commit message #59: fixing build error # This is the commit message #60: fixing build error # This is the commit message #61: fixing build error # This is the commit message #62: fixing build error # This is the commit message #63: fixing build error # This is the commit message #64: fixing build error # This is the commit message #65: fixing build error # This is the commit message #66: fixing build error # This is the commit message #67: fixing build error # This is the commit message #68: fixing build error # This is the commit message #69: fixing build error # This is the commit message #70: fixing build error # This is the commit message #71: fixing build error # This is the commit message #72: fixing build error # This is the commit message #73: trying acr fix # This is the commit message #74: latest changes # This is the commit message #75: removing docker dependency on azure devops pipeline # This is the commit message #76: removing docker dependency on azure devops pipeline # This is the commit message #77: removing docker dependency on azure devops pipeline # This is the commit message #78: removing docker dependency on azure devops pipeline # This is the commit message #79: removing docker dependency on azure devops pipeline # This is the commit message #80: removing docker dependency on azure devops pipeline # This is the commit message #81: removing docker dependency on azure devops pipeline # This is the commit message #82: removing docker dependency on azure devops pipeline # This is the commit message #83: removing docker dependency on azure devops pipeline # This is the commit message #84: removing docker dependency on azure devops pipeline # This is the commit message #85: removing docker dependency on azure devops pipeline # This is the commit message #86: removing docker dependency on azure devops pipeline # This is the commit message #87: removing docker dependency on azure devops pipeline # This is the commit message #88: removing docker dependency on azure devops pipeline # This is the commit message #89: removing docker dependency on azure devops pipeline # This is the commit message #90: removing docker dependency on azure devops pipeline # This is the commit message #91: removing docker dependency on azure devops pipeline # This is the commit message #92: removing docker dependency on azure devops pipeline # This is the commit message #93: removing docker dependency on azure devops pipeline # This is the commit message #94: removing docker dependency on azure devops pipeline # This is the commit message #95: removing docker dependency on azure devops pipeline # This is the commit message #96: removing docker dependency on azure devops pipeline # This is the commit message #97: removing docker dependency on azure devops pipeline # This is the commit message #98: final commit including resource name randomization # This is the commit message #99: Add provider to configure az infra for Terraform * resolving merge conflicts for squash Updated documentation based on review comments Integrate review comments for documentation. Add usage example for each of the providers Adding environment template descriptions removing go version var from azdo pipeline as it's unused removing unused setup folder adding more verbose logging for azure devops failure fixing pull request branch name resolution bug fixing pull request branch name resolution bug addressing nick's pr comments documenting script and docker images cleaning up required env var check fixing base branch bug Added service plan terraform templates to Azure Adding tags for resources Integrate review comments to add random id to name Add tags, capacity and reserved for service plan Minor Fixes for documentation Integrate review comments related to resource naming Remove Optional and Required in variables.tf Update variables.tf Update Service Plan Tier to Isolated squaching commits applied base image suggestions from nick * squashing commits and slimming down the build image * removing go* path from azure devops pipeline as we removed go mods * refactoring our azure devops pipeline so it's aligned with the local test runner * fixing azure devops pipeline bug * fixing base image build variable reference bug * Addressing nick's PR comments * resolving issue with failed builds after completing branches merges * addressing a bug where test harness directory changes were not getting picked up by the harness * removing local echo statement * Adding directory exists check and app service container command variable * addressing nick's PR comments * adding git diff extension whitelist filter * Overhauling main project readme * Adding james to the readme * Update README.md * Updating readme from the test-harness directory
2019-05-01 00:41:53 +03:00
This test harness runs automated tests for only the deployment templates that have changed by comparing the changes in your git log versus upstream master.
## Writing tests against Terraform
This module includes a library that simplifies writing unit and integration [Note: integration test support is *pending*] tests against templates. It aims to extract out the most painful pieces of this process and provide common-sense implementations that can be shared across any template. Care is taken to provide hooks for more in-depth testing if it is needed by the template maintainer.
### Sample Unit Test Usage
The below example shows how easy it is to write a unit test that automatically coordinates the following:
- Run `terraform init`, `terraform workspace select`, `terraform plan` and parse the plan output into a [Terraform Plan](https://github.com/hashicorp/terraform/blob/master/terraform/plan.go)
- Validate that running the test would only create and not update/delete resources. (Note: This should always be true, otherwise the test is not running in isolation. Not running the test in isolation can be very dangerous and may cause resources to be deleted)
- Validate that the resource <--> attribute <--> attribute value mappings match those supplied via the `ExpectedResourceAttributeValues` parameter. This only asserts that the supplied mappings exist and match the terraform plan. If there are more resources or attributes, the test will not fail.
- Validate that the correct number of resources are created
Also note that the harness provides a hook that allows a list of user-defined functions that accept a handle to the GoTest and Terraform Plan objects. Users can supply custom test logic via this hook by supplying a non-nil `PlanAssertions` argument to `infratests.UnitTestFixture`. This feature is not used in the example below.
```go
package test
import (
"fmt"
"os"
"testing"
"github.com/gruntwork-io/terratest/modules/random"
"github.com/gruntwork-io/terratest/modules/terraform"
"github.com/microsoft/cobalt/test-harness/infratests"
)
var prefix = fmt.Sprintf("cobalt-%s", random.UniqueId())
var datacenter = os.Getenv("DATACENTER_LOCATION")
var tf_options = &terraform.Options{
TerraformDir: "../../",
Upgrade: true,
Vars: map[string]interface{}{
"prefix": prefix,
"location": datacenter,
},
}
func TestAzureSimple(t *testing.T) {
test_fixture := infratests.UnitTestFixture{
GoTest: t,
TfOptions: tf_options,
ExpectedResourceCount: 3,
PlanAssertions: nil,
ExpectedResourceAttributeValues: infratests.ResourceAttributeValueMapping{
"azurerm_app_service.main": map[string]string{
"resource_group_name": prefix,
"location": datacenter,
"site_config.0.linux_fx_version": "DOCKER|appsvcsample/static-site:latest",
},
"azurerm_app_service_plan.main": map[string]string{
"kind": "Linux",
"location": datacenter,
"reserved": "true",
"sku.0.size": "S1",
"sku.0.tier": "Standard",
},
"azurerm_resource_group.main": map[string]string{
"location": datacenter,
"name": prefix,
},
},
}
infratests.RunUnitTests(&test_fixture)
}
```
### Sample Integration Testing Usage
The below example shows how easy it is to write an integration test that automatically coordinates the following:
- Run `terraform init`, `terraform workspace select`, `terraform apply` and parse the template outputs into a Go struct
- Validate that the terraform outputs are correct by asserting that the correct number exist and that any user-supplied key-value mappings are reflected in that output.
- Pass terraform output to user-defined test functions for use-case specific tests. In this case, we simply validate that the application endpoint responds as expected
```go
package test
import (
"fmt"
"os"
"strings"
"testing"
"time"
httpClient "github.com/gruntwork-io/terratest/modules/http-helper"
"github.com/gruntwork-io/terratest/modules/random"
"github.com/gruntwork-io/terratest/modules/terraform"
"github.com/microsoft/cobalt/test-harness/infratests"
)
var prefix = fmt.Sprintf("cobalt-%s", random.UniqueId())
var datacenter = os.Getenv("DATACENTER_LOCATION")
var tfOptions = &terraform.Options{
TerraformDir: "../../",
Upgrade: true,
Vars: map[string]interface{}{
"prefix": prefix,
"location": datacenter,
},
BackendConfig: map[string]interface{}{
"storage_account_name": os.Getenv("TF_VAR_remote_state_account"),
"container_name": os.Getenv("TF_VAR_remote_state_container"),
},
}
// Validates that the service responds with HTTP 200 status code. A retry strategy
// is used because it may take some time for the application to finish standing up.
func httpGetRespondsWith200(goTest *testing.T, output infratests.TerraformOutput) {
hostname := output["app_service_default_hostname"].(string)
maxRetries := 20
timeBetweenRetries := 2 * time.Second
httpClient.HttpGetWithRetryWithCustomValidationE(
goTest,
hostname,
maxRetries,
timeBetweenRetries,
func(status int, content string) bool {
return status == 200 && strings.Contains(content, "Hello App Service!")
},
)
}
func TestAzureSimple(t *testing.T) {
testFixture := infratests.IntegrationTestFixture{
GoTest: t,
TfOptions: tfOptions,
ExpectedTfOutputCount: 2,
ExpectedTfOutput: infratests.TerraformOutput{
"app_service_name": fmt.Sprintf("%s-appservice", prefix),
"app_service_default_hostname": strings.ToLower(fmt.Sprintf("https://%s-appservice.azurewebsites.net", prefix)),
},
TfOutputAssertions: []infratests.TerraformOutputValidation{
httpGetRespondsWith200,
},
}
infratests.RunIntegrationTests(&testFixture)
}
```
## Test Setup Locally
### Local Environment Setup
- You'll need to define a `.env` file in the root of the project. You can use our environment template file to start. `cp .env.template .env`
- Provide values for the environment values in `.env` which are required to authenticate Terraform to provision resources within your subscription.
```bash
ARM_SUBSCRIPTION_ID="<az-service-principal-subscription-id>"
ARM_CLIENT_ID="<az-service-principal-client-id>"
ARM_CLIENT_SECRET="<az-service-principal-auth-secret>"
ARM_TENANT_ID="<az-service-principal-tenant>"
ARM_ACCESS_KEY="<remote-state-storage-account-primary-key>"
TF_VAR_remote_state_account="<tf-remote-state-storage-account-name>"
TF_VAR_remote_state_container="<tf-remote-state-storage-container-name>"
```
## Local Test Runner Options
### Option 1: Docker
The benefit with running the test harness through docker is that developers don't need to worry about setting up their local environment. We strongly recommend running `local-run.sh` before submitting a PR as our devops pipeline runs the dockerized version of the test harness.
#### Prerequisites
Erisch/features/devops/integration tests (#75) * # This is a combination of 99 commits. # This is the 1st commit message: Adding docker test base image # This is the commit message #2: Adding test files # This is the commit message #3: testing # This is the commit message #4: Added folder # This is the commit message #5: Added folder # This is the commit message #6: Azure Devops CI Build Pipeline (#67) * Adding azure devops build pipeline * Adding README * Adding azure build badge # This is the commit message #7: saving latest tests # This is the commit message #8: Adding docker test base image (#68) # This is the commit message #9: EOD checkin # This is the commit message #10: posting latest # This is the commit message #11: eod commits # This is the commit message #12: eod commit # This is the commit message #13: refactored test directory structure # This is the commit message #14: Refactored build # This is the commit message #15: Adding hello world azure simple app # This is the commit message #16: Adding hello world azure simple app # This is the commit message #17: refactoring test harness # This is the commit message #18: refactoring test harness # This is the commit message #19: checking latest # This is the commit message #20: committing latest # This is the commit message #21: checking in latest changes # This is the commit message #22: Checking in latest progress # This is the commit message #23: applying final touches before PR submission # This is the commit message #24: updating azure keyvault secret names # This is the commit message #25: Checking in latest progress # This is the commit message #26: pushing latest pipeline definition # This is the commit message #27: updating build pipeline variable format # This is the commit message #28: updating build pipeline variable format # This is the commit message #29: cleaning up build variables # This is the commit message #30: adding minor changes to azure build pipeline # This is the commit message #31: updating azure keyvault secret names # This is the commit message #32: updating azure keyvault secret names # This is the commit message #33: fixing docker login azdo step # This is the commit message #34: fixing docker login azdo step # This is the commit message #35: fixing docker login azdo step # This is the commit message #36: fixing docker login azdo step # This is the commit message #37: updating build pipeline variables # This is the commit message #38: updating build pipeline variables # This is the commit message #39: updating build pipeline variables # This is the commit message #40: updating build pipeline variables # This is the commit message #41: updating build pipeline variables # This is the commit message #42: updating build pipeline variables # This is the commit message #43: applying fix to git diff script # This is the commit message #44: applying fix to git diff script # This is the commit message #45: applying fix to git diff script # This is the commit message #46: applying fix to git diff script # This is the commit message #47: applying fix to git diff script # This is the commit message #48: resolving pipeline bug # This is the commit message #49: fixing build error # This is the commit message #50: fixing build error # This is the commit message #51: fixing build error # This is the commit message #52: fixing build error # This is the commit message #53: fixing build error # This is the commit message #54: fixing build error # This is the commit message #55: fixing build error # This is the commit message #56: fixing build error # This is the commit message #57: fixing build error # This is the commit message #58: fixing build error # This is the commit message #59: fixing build error # This is the commit message #60: fixing build error # This is the commit message #61: fixing build error # This is the commit message #62: fixing build error # This is the commit message #63: fixing build error # This is the commit message #64: fixing build error # This is the commit message #65: fixing build error # This is the commit message #66: fixing build error # This is the commit message #67: fixing build error # This is the commit message #68: fixing build error # This is the commit message #69: fixing build error # This is the commit message #70: fixing build error # This is the commit message #71: fixing build error # This is the commit message #72: fixing build error # This is the commit message #73: trying acr fix # This is the commit message #74: latest changes # This is the commit message #75: removing docker dependency on azure devops pipeline # This is the commit message #76: removing docker dependency on azure devops pipeline # This is the commit message #77: removing docker dependency on azure devops pipeline # This is the commit message #78: removing docker dependency on azure devops pipeline # This is the commit message #79: removing docker dependency on azure devops pipeline # This is the commit message #80: removing docker dependency on azure devops pipeline # This is the commit message #81: removing docker dependency on azure devops pipeline # This is the commit message #82: removing docker dependency on azure devops pipeline # This is the commit message #83: removing docker dependency on azure devops pipeline # This is the commit message #84: removing docker dependency on azure devops pipeline # This is the commit message #85: removing docker dependency on azure devops pipeline # This is the commit message #86: removing docker dependency on azure devops pipeline # This is the commit message #87: removing docker dependency on azure devops pipeline # This is the commit message #88: removing docker dependency on azure devops pipeline # This is the commit message #89: removing docker dependency on azure devops pipeline # This is the commit message #90: removing docker dependency on azure devops pipeline # This is the commit message #91: removing docker dependency on azure devops pipeline # This is the commit message #92: removing docker dependency on azure devops pipeline # This is the commit message #93: removing docker dependency on azure devops pipeline # This is the commit message #94: removing docker dependency on azure devops pipeline # This is the commit message #95: removing docker dependency on azure devops pipeline # This is the commit message #96: removing docker dependency on azure devops pipeline # This is the commit message #97: removing docker dependency on azure devops pipeline # This is the commit message #98: final commit including resource name randomization # This is the commit message #99: Add provider to configure az infra for Terraform * resolving merge conflicts for squash Updated documentation based on review comments Integrate review comments for documentation. Add usage example for each of the providers Adding environment template descriptions removing go version var from azdo pipeline as it's unused removing unused setup folder adding more verbose logging for azure devops failure fixing pull request branch name resolution bug fixing pull request branch name resolution bug addressing nick's pr comments documenting script and docker images cleaning up required env var check fixing base branch bug Added service plan terraform templates to Azure Adding tags for resources Integrate review comments to add random id to name Add tags, capacity and reserved for service plan Minor Fixes for documentation Integrate review comments related to resource naming Remove Optional and Required in variables.tf Update variables.tf Update Service Plan Tier to Isolated squaching commits applied base image suggestions from nick * squashing commits and slimming down the build image * removing go* path from azure devops pipeline as we removed go mods * refactoring our azure devops pipeline so it's aligned with the local test runner * fixing azure devops pipeline bug * fixing base image build variable reference bug * Addressing nick's PR comments
2019-04-26 00:22:25 +03:00
- [Docker](https://docs.docker.com/install/) 18.09 or later
Update main project readme (#79) * # This is a combination of 99 commits. # This is the 1st commit message: Adding docker test base image # This is the commit message #2: Adding test files # This is the commit message #3: testing # This is the commit message #4: Added folder # This is the commit message #5: Added folder # This is the commit message #6: Azure Devops CI Build Pipeline (#67) * Adding azure devops build pipeline * Adding README * Adding azure build badge # This is the commit message #7: saving latest tests # This is the commit message #8: Adding docker test base image (#68) # This is the commit message #9: EOD checkin # This is the commit message #10: posting latest # This is the commit message #11: eod commits # This is the commit message #12: eod commit # This is the commit message #13: refactored test directory structure # This is the commit message #14: Refactored build # This is the commit message #15: Adding hello world azure simple app # This is the commit message #16: Adding hello world azure simple app # This is the commit message #17: refactoring test harness # This is the commit message #18: refactoring test harness # This is the commit message #19: checking latest # This is the commit message #20: committing latest # This is the commit message #21: checking in latest changes # This is the commit message #22: Checking in latest progress # This is the commit message #23: applying final touches before PR submission # This is the commit message #24: updating azure keyvault secret names # This is the commit message #25: Checking in latest progress # This is the commit message #26: pushing latest pipeline definition # This is the commit message #27: updating build pipeline variable format # This is the commit message #28: updating build pipeline variable format # This is the commit message #29: cleaning up build variables # This is the commit message #30: adding minor changes to azure build pipeline # This is the commit message #31: updating azure keyvault secret names # This is the commit message #32: updating azure keyvault secret names # This is the commit message #33: fixing docker login azdo step # This is the commit message #34: fixing docker login azdo step # This is the commit message #35: fixing docker login azdo step # This is the commit message #36: fixing docker login azdo step # This is the commit message #37: updating build pipeline variables # This is the commit message #38: updating build pipeline variables # This is the commit message #39: updating build pipeline variables # This is the commit message #40: updating build pipeline variables # This is the commit message #41: updating build pipeline variables # This is the commit message #42: updating build pipeline variables # This is the commit message #43: applying fix to git diff script # This is the commit message #44: applying fix to git diff script # This is the commit message #45: applying fix to git diff script # This is the commit message #46: applying fix to git diff script # This is the commit message #47: applying fix to git diff script # This is the commit message #48: resolving pipeline bug # This is the commit message #49: fixing build error # This is the commit message #50: fixing build error # This is the commit message #51: fixing build error # This is the commit message #52: fixing build error # This is the commit message #53: fixing build error # This is the commit message #54: fixing build error # This is the commit message #55: fixing build error # This is the commit message #56: fixing build error # This is the commit message #57: fixing build error # This is the commit message #58: fixing build error # This is the commit message #59: fixing build error # This is the commit message #60: fixing build error # This is the commit message #61: fixing build error # This is the commit message #62: fixing build error # This is the commit message #63: fixing build error # This is the commit message #64: fixing build error # This is the commit message #65: fixing build error # This is the commit message #66: fixing build error # This is the commit message #67: fixing build error # This is the commit message #68: fixing build error # This is the commit message #69: fixing build error # This is the commit message #70: fixing build error # This is the commit message #71: fixing build error # This is the commit message #72: fixing build error # This is the commit message #73: trying acr fix # This is the commit message #74: latest changes # This is the commit message #75: removing docker dependency on azure devops pipeline # This is the commit message #76: removing docker dependency on azure devops pipeline # This is the commit message #77: removing docker dependency on azure devops pipeline # This is the commit message #78: removing docker dependency on azure devops pipeline # This is the commit message #79: removing docker dependency on azure devops pipeline # This is the commit message #80: removing docker dependency on azure devops pipeline # This is the commit message #81: removing docker dependency on azure devops pipeline # This is the commit message #82: removing docker dependency on azure devops pipeline # This is the commit message #83: removing docker dependency on azure devops pipeline # This is the commit message #84: removing docker dependency on azure devops pipeline # This is the commit message #85: removing docker dependency on azure devops pipeline # This is the commit message #86: removing docker dependency on azure devops pipeline # This is the commit message #87: removing docker dependency on azure devops pipeline # This is the commit message #88: removing docker dependency on azure devops pipeline # This is the commit message #89: removing docker dependency on azure devops pipeline # This is the commit message #90: removing docker dependency on azure devops pipeline # This is the commit message #91: removing docker dependency on azure devops pipeline # This is the commit message #92: removing docker dependency on azure devops pipeline # This is the commit message #93: removing docker dependency on azure devops pipeline # This is the commit message #94: removing docker dependency on azure devops pipeline # This is the commit message #95: removing docker dependency on azure devops pipeline # This is the commit message #96: removing docker dependency on azure devops pipeline # This is the commit message #97: removing docker dependency on azure devops pipeline # This is the commit message #98: final commit including resource name randomization # This is the commit message #99: Add provider to configure az infra for Terraform * resolving merge conflicts for squash Updated documentation based on review comments Integrate review comments for documentation. Add usage example for each of the providers Adding environment template descriptions removing go version var from azdo pipeline as it's unused removing unused setup folder adding more verbose logging for azure devops failure fixing pull request branch name resolution bug fixing pull request branch name resolution bug addressing nick's pr comments documenting script and docker images cleaning up required env var check fixing base branch bug Added service plan terraform templates to Azure Adding tags for resources Integrate review comments to add random id to name Add tags, capacity and reserved for service plan Minor Fixes for documentation Integrate review comments related to resource naming Remove Optional and Required in variables.tf Update variables.tf Update Service Plan Tier to Isolated squaching commits applied base image suggestions from nick * squashing commits and slimming down the build image * removing go* path from azure devops pipeline as we removed go mods * refactoring our azure devops pipeline so it's aligned with the local test runner * fixing azure devops pipeline bug * fixing base image build variable reference bug * Addressing nick's PR comments * resolving issue with failed builds after completing branches merges * addressing a bug where test harness directory changes were not getting picked up by the harness * removing local echo statement * Adding directory exists check and app service container command variable * addressing nick's PR comments * adding git diff extension whitelist filter * Overhauling main project readme * Adding james to the readme * Update README.md * Updating readme from the test-harness directory
2019-05-01 00:41:53 +03:00
- An Azure subscription
- A [service principal](https://docs.microsoft.com/en-us/azure/active-directory/develop/howto-create-service-principal-portal)
- An azure storage account for tracking terraform remote backend state. You can use our backend state setup [template](../infra/templates/backend-state-setup/README.md) to provision the storage resources.
Update main project readme (#79) * # This is a combination of 99 commits. # This is the 1st commit message: Adding docker test base image # This is the commit message #2: Adding test files # This is the commit message #3: testing # This is the commit message #4: Added folder # This is the commit message #5: Added folder # This is the commit message #6: Azure Devops CI Build Pipeline (#67) * Adding azure devops build pipeline * Adding README * Adding azure build badge # This is the commit message #7: saving latest tests # This is the commit message #8: Adding docker test base image (#68) # This is the commit message #9: EOD checkin # This is the commit message #10: posting latest # This is the commit message #11: eod commits # This is the commit message #12: eod commit # This is the commit message #13: refactored test directory structure # This is the commit message #14: Refactored build # This is the commit message #15: Adding hello world azure simple app # This is the commit message #16: Adding hello world azure simple app # This is the commit message #17: refactoring test harness # This is the commit message #18: refactoring test harness # This is the commit message #19: checking latest # This is the commit message #20: committing latest # This is the commit message #21: checking in latest changes # This is the commit message #22: Checking in latest progress # This is the commit message #23: applying final touches before PR submission # This is the commit message #24: updating azure keyvault secret names # This is the commit message #25: Checking in latest progress # This is the commit message #26: pushing latest pipeline definition # This is the commit message #27: updating build pipeline variable format # This is the commit message #28: updating build pipeline variable format # This is the commit message #29: cleaning up build variables # This is the commit message #30: adding minor changes to azure build pipeline # This is the commit message #31: updating azure keyvault secret names # This is the commit message #32: updating azure keyvault secret names # This is the commit message #33: fixing docker login azdo step # This is the commit message #34: fixing docker login azdo step # This is the commit message #35: fixing docker login azdo step # This is the commit message #36: fixing docker login azdo step # This is the commit message #37: updating build pipeline variables # This is the commit message #38: updating build pipeline variables # This is the commit message #39: updating build pipeline variables # This is the commit message #40: updating build pipeline variables # This is the commit message #41: updating build pipeline variables # This is the commit message #42: updating build pipeline variables # This is the commit message #43: applying fix to git diff script # This is the commit message #44: applying fix to git diff script # This is the commit message #45: applying fix to git diff script # This is the commit message #46: applying fix to git diff script # This is the commit message #47: applying fix to git diff script # This is the commit message #48: resolving pipeline bug # This is the commit message #49: fixing build error # This is the commit message #50: fixing build error # This is the commit message #51: fixing build error # This is the commit message #52: fixing build error # This is the commit message #53: fixing build error # This is the commit message #54: fixing build error # This is the commit message #55: fixing build error # This is the commit message #56: fixing build error # This is the commit message #57: fixing build error # This is the commit message #58: fixing build error # This is the commit message #59: fixing build error # This is the commit message #60: fixing build error # This is the commit message #61: fixing build error # This is the commit message #62: fixing build error # This is the commit message #63: fixing build error # This is the commit message #64: fixing build error # This is the commit message #65: fixing build error # This is the commit message #66: fixing build error # This is the commit message #67: fixing build error # This is the commit message #68: fixing build error # This is the commit message #69: fixing build error # This is the commit message #70: fixing build error # This is the commit message #71: fixing build error # This is the commit message #72: fixing build error # This is the commit message #73: trying acr fix # This is the commit message #74: latest changes # This is the commit message #75: removing docker dependency on azure devops pipeline # This is the commit message #76: removing docker dependency on azure devops pipeline # This is the commit message #77: removing docker dependency on azure devops pipeline # This is the commit message #78: removing docker dependency on azure devops pipeline # This is the commit message #79: removing docker dependency on azure devops pipeline # This is the commit message #80: removing docker dependency on azure devops pipeline # This is the commit message #81: removing docker dependency on azure devops pipeline # This is the commit message #82: removing docker dependency on azure devops pipeline # This is the commit message #83: removing docker dependency on azure devops pipeline # This is the commit message #84: removing docker dependency on azure devops pipeline # This is the commit message #85: removing docker dependency on azure devops pipeline # This is the commit message #86: removing docker dependency on azure devops pipeline # This is the commit message #87: removing docker dependency on azure devops pipeline # This is the commit message #88: removing docker dependency on azure devops pipeline # This is the commit message #89: removing docker dependency on azure devops pipeline # This is the commit message #90: removing docker dependency on azure devops pipeline # This is the commit message #91: removing docker dependency on azure devops pipeline # This is the commit message #92: removing docker dependency on azure devops pipeline # This is the commit message #93: removing docker dependency on azure devops pipeline # This is the commit message #94: removing docker dependency on azure devops pipeline # This is the commit message #95: removing docker dependency on azure devops pipeline # This is the commit message #96: removing docker dependency on azure devops pipeline # This is the commit message #97: removing docker dependency on azure devops pipeline # This is the commit message #98: final commit including resource name randomization # This is the commit message #99: Add provider to configure az infra for Terraform * resolving merge conflicts for squash Updated documentation based on review comments Integrate review comments for documentation. Add usage example for each of the providers Adding environment template descriptions removing go version var from azdo pipeline as it's unused removing unused setup folder adding more verbose logging for azure devops failure fixing pull request branch name resolution bug fixing pull request branch name resolution bug addressing nick's pr comments documenting script and docker images cleaning up required env var check fixing base branch bug Added service plan terraform templates to Azure Adding tags for resources Integrate review comments to add random id to name Add tags, capacity and reserved for service plan Minor Fixes for documentation Integrate review comments related to resource naming Remove Optional and Required in variables.tf Update variables.tf Update Service Plan Tier to Isolated squaching commits applied base image suggestions from nick * squashing commits and slimming down the build image * removing go* path from azure devops pipeline as we removed go mods * refactoring our azure devops pipeline so it's aligned with the local test runner * fixing azure devops pipeline bug * fixing base image build variable reference bug * Addressing nick's PR comments * resolving issue with failed builds after completing branches merges * addressing a bug where test harness directory changes were not getting picked up by the harness * removing local echo statement * Adding directory exists check and app service container command variable * addressing nick's PR comments * adding git diff extension whitelist filter * Overhauling main project readme * Adding james to the readme * Update README.md * Updating readme from the test-harness directory
2019-05-01 00:41:53 +03:00
- [git](https://www.atlassian.com/git/tutorials/install-git)
Erisch/features/devops/integration tests (#75) * # This is a combination of 99 commits. # This is the 1st commit message: Adding docker test base image # This is the commit message #2: Adding test files # This is the commit message #3: testing # This is the commit message #4: Added folder # This is the commit message #5: Added folder # This is the commit message #6: Azure Devops CI Build Pipeline (#67) * Adding azure devops build pipeline * Adding README * Adding azure build badge # This is the commit message #7: saving latest tests # This is the commit message #8: Adding docker test base image (#68) # This is the commit message #9: EOD checkin # This is the commit message #10: posting latest # This is the commit message #11: eod commits # This is the commit message #12: eod commit # This is the commit message #13: refactored test directory structure # This is the commit message #14: Refactored build # This is the commit message #15: Adding hello world azure simple app # This is the commit message #16: Adding hello world azure simple app # This is the commit message #17: refactoring test harness # This is the commit message #18: refactoring test harness # This is the commit message #19: checking latest # This is the commit message #20: committing latest # This is the commit message #21: checking in latest changes # This is the commit message #22: Checking in latest progress # This is the commit message #23: applying final touches before PR submission # This is the commit message #24: updating azure keyvault secret names # This is the commit message #25: Checking in latest progress # This is the commit message #26: pushing latest pipeline definition # This is the commit message #27: updating build pipeline variable format # This is the commit message #28: updating build pipeline variable format # This is the commit message #29: cleaning up build variables # This is the commit message #30: adding minor changes to azure build pipeline # This is the commit message #31: updating azure keyvault secret names # This is the commit message #32: updating azure keyvault secret names # This is the commit message #33: fixing docker login azdo step # This is the commit message #34: fixing docker login azdo step # This is the commit message #35: fixing docker login azdo step # This is the commit message #36: fixing docker login azdo step # This is the commit message #37: updating build pipeline variables # This is the commit message #38: updating build pipeline variables # This is the commit message #39: updating build pipeline variables # This is the commit message #40: updating build pipeline variables # This is the commit message #41: updating build pipeline variables # This is the commit message #42: updating build pipeline variables # This is the commit message #43: applying fix to git diff script # This is the commit message #44: applying fix to git diff script # This is the commit message #45: applying fix to git diff script # This is the commit message #46: applying fix to git diff script # This is the commit message #47: applying fix to git diff script # This is the commit message #48: resolving pipeline bug # This is the commit message #49: fixing build error # This is the commit message #50: fixing build error # This is the commit message #51: fixing build error # This is the commit message #52: fixing build error # This is the commit message #53: fixing build error # This is the commit message #54: fixing build error # This is the commit message #55: fixing build error # This is the commit message #56: fixing build error # This is the commit message #57: fixing build error # This is the commit message #58: fixing build error # This is the commit message #59: fixing build error # This is the commit message #60: fixing build error # This is the commit message #61: fixing build error # This is the commit message #62: fixing build error # This is the commit message #63: fixing build error # This is the commit message #64: fixing build error # This is the commit message #65: fixing build error # This is the commit message #66: fixing build error # This is the commit message #67: fixing build error # This is the commit message #68: fixing build error # This is the commit message #69: fixing build error # This is the commit message #70: fixing build error # This is the commit message #71: fixing build error # This is the commit message #72: fixing build error # This is the commit message #73: trying acr fix # This is the commit message #74: latest changes # This is the commit message #75: removing docker dependency on azure devops pipeline # This is the commit message #76: removing docker dependency on azure devops pipeline # This is the commit message #77: removing docker dependency on azure devops pipeline # This is the commit message #78: removing docker dependency on azure devops pipeline # This is the commit message #79: removing docker dependency on azure devops pipeline # This is the commit message #80: removing docker dependency on azure devops pipeline # This is the commit message #81: removing docker dependency on azure devops pipeline # This is the commit message #82: removing docker dependency on azure devops pipeline # This is the commit message #83: removing docker dependency on azure devops pipeline # This is the commit message #84: removing docker dependency on azure devops pipeline # This is the commit message #85: removing docker dependency on azure devops pipeline # This is the commit message #86: removing docker dependency on azure devops pipeline # This is the commit message #87: removing docker dependency on azure devops pipeline # This is the commit message #88: removing docker dependency on azure devops pipeline # This is the commit message #89: removing docker dependency on azure devops pipeline # This is the commit message #90: removing docker dependency on azure devops pipeline # This is the commit message #91: removing docker dependency on azure devops pipeline # This is the commit message #92: removing docker dependency on azure devops pipeline # This is the commit message #93: removing docker dependency on azure devops pipeline # This is the commit message #94: removing docker dependency on azure devops pipeline # This is the commit message #95: removing docker dependency on azure devops pipeline # This is the commit message #96: removing docker dependency on azure devops pipeline # This is the commit message #97: removing docker dependency on azure devops pipeline # This is the commit message #98: final commit including resource name randomization # This is the commit message #99: Add provider to configure az infra for Terraform * resolving merge conflicts for squash Updated documentation based on review comments Integrate review comments for documentation. Add usage example for each of the providers Adding environment template descriptions removing go version var from azdo pipeline as it's unused removing unused setup folder adding more verbose logging for azure devops failure fixing pull request branch name resolution bug fixing pull request branch name resolution bug addressing nick's pr comments documenting script and docker images cleaning up required env var check fixing base branch bug Added service plan terraform templates to Azure Adding tags for resources Integrate review comments to add random id to name Add tags, capacity and reserved for service plan Minor Fixes for documentation Integrate review comments related to resource naming Remove Optional and Required in variables.tf Update variables.tf Update Service Plan Tier to Isolated squaching commits applied base image suggestions from nick * squashing commits and slimming down the build image * removing go* path from azure devops pipeline as we removed go mods * refactoring our azure devops pipeline so it's aligned with the local test runner * fixing azure devops pipeline bug * fixing base image build variable reference bug * Addressing nick's PR comments
2019-04-26 00:22:25 +03:00
#### Base Image Setup
Our test harness uses a base docker image to pre-package dependencies like Terraform, Go, Azure CLI, Terratest vendor packages, etc.
- **Optional Step** - Cobalt uses the public [msftcse/cobalt-test-base](https://hub.docker.com/r/msftcse/cobalt-test-base) base image by default. We also provide a utility script to generate a new base image.
- Rebuilding a new base image is as simple as running
Erisch/features/devops/integration tests (#75) * # This is a combination of 99 commits. # This is the 1st commit message: Adding docker test base image # This is the commit message #2: Adding test files # This is the commit message #3: testing # This is the commit message #4: Added folder # This is the commit message #5: Added folder # This is the commit message #6: Azure Devops CI Build Pipeline (#67) * Adding azure devops build pipeline * Adding README * Adding azure build badge # This is the commit message #7: saving latest tests # This is the commit message #8: Adding docker test base image (#68) # This is the commit message #9: EOD checkin # This is the commit message #10: posting latest # This is the commit message #11: eod commits # This is the commit message #12: eod commit # This is the commit message #13: refactored test directory structure # This is the commit message #14: Refactored build # This is the commit message #15: Adding hello world azure simple app # This is the commit message #16: Adding hello world azure simple app # This is the commit message #17: refactoring test harness # This is the commit message #18: refactoring test harness # This is the commit message #19: checking latest # This is the commit message #20: committing latest # This is the commit message #21: checking in latest changes # This is the commit message #22: Checking in latest progress # This is the commit message #23: applying final touches before PR submission # This is the commit message #24: updating azure keyvault secret names # This is the commit message #25: Checking in latest progress # This is the commit message #26: pushing latest pipeline definition # This is the commit message #27: updating build pipeline variable format # This is the commit message #28: updating build pipeline variable format # This is the commit message #29: cleaning up build variables # This is the commit message #30: adding minor changes to azure build pipeline # This is the commit message #31: updating azure keyvault secret names # This is the commit message #32: updating azure keyvault secret names # This is the commit message #33: fixing docker login azdo step # This is the commit message #34: fixing docker login azdo step # This is the commit message #35: fixing docker login azdo step # This is the commit message #36: fixing docker login azdo step # This is the commit message #37: updating build pipeline variables # This is the commit message #38: updating build pipeline variables # This is the commit message #39: updating build pipeline variables # This is the commit message #40: updating build pipeline variables # This is the commit message #41: updating build pipeline variables # This is the commit message #42: updating build pipeline variables # This is the commit message #43: applying fix to git diff script # This is the commit message #44: applying fix to git diff script # This is the commit message #45: applying fix to git diff script # This is the commit message #46: applying fix to git diff script # This is the commit message #47: applying fix to git diff script # This is the commit message #48: resolving pipeline bug # This is the commit message #49: fixing build error # This is the commit message #50: fixing build error # This is the commit message #51: fixing build error # This is the commit message #52: fixing build error # This is the commit message #53: fixing build error # This is the commit message #54: fixing build error # This is the commit message #55: fixing build error # This is the commit message #56: fixing build error # This is the commit message #57: fixing build error # This is the commit message #58: fixing build error # This is the commit message #59: fixing build error # This is the commit message #60: fixing build error # This is the commit message #61: fixing build error # This is the commit message #62: fixing build error # This is the commit message #63: fixing build error # This is the commit message #64: fixing build error # This is the commit message #65: fixing build error # This is the commit message #66: fixing build error # This is the commit message #67: fixing build error # This is the commit message #68: fixing build error # This is the commit message #69: fixing build error # This is the commit message #70: fixing build error # This is the commit message #71: fixing build error # This is the commit message #72: fixing build error # This is the commit message #73: trying acr fix # This is the commit message #74: latest changes # This is the commit message #75: removing docker dependency on azure devops pipeline # This is the commit message #76: removing docker dependency on azure devops pipeline # This is the commit message #77: removing docker dependency on azure devops pipeline # This is the commit message #78: removing docker dependency on azure devops pipeline # This is the commit message #79: removing docker dependency on azure devops pipeline # This is the commit message #80: removing docker dependency on azure devops pipeline # This is the commit message #81: removing docker dependency on azure devops pipeline # This is the commit message #82: removing docker dependency on azure devops pipeline # This is the commit message #83: removing docker dependency on azure devops pipeline # This is the commit message #84: removing docker dependency on azure devops pipeline # This is the commit message #85: removing docker dependency on azure devops pipeline # This is the commit message #86: removing docker dependency on azure devops pipeline # This is the commit message #87: removing docker dependency on azure devops pipeline # This is the commit message #88: removing docker dependency on azure devops pipeline # This is the commit message #89: removing docker dependency on azure devops pipeline # This is the commit message #90: removing docker dependency on azure devops pipeline # This is the commit message #91: removing docker dependency on azure devops pipeline # This is the commit message #92: removing docker dependency on azure devops pipeline # This is the commit message #93: removing docker dependency on azure devops pipeline # This is the commit message #94: removing docker dependency on azure devops pipeline # This is the commit message #95: removing docker dependency on azure devops pipeline # This is the commit message #96: removing docker dependency on azure devops pipeline # This is the commit message #97: removing docker dependency on azure devops pipeline # This is the commit message #98: final commit including resource name randomization # This is the commit message #99: Add provider to configure az infra for Terraform * resolving merge conflicts for squash Updated documentation based on review comments Integrate review comments for documentation. Add usage example for each of the providers Adding environment template descriptions removing go version var from azdo pipeline as it's unused removing unused setup folder adding more verbose logging for azure devops failure fixing pull request branch name resolution bug fixing pull request branch name resolution bug addressing nick's pr comments documenting script and docker images cleaning up required env var check fixing base branch bug Added service plan terraform templates to Azure Adding tags for resources Integrate review comments to add random id to name Add tags, capacity and reserved for service plan Minor Fixes for documentation Integrate review comments related to resource naming Remove Optional and Required in variables.tf Update variables.tf Update Service Plan Tier to Isolated squaching commits applied base image suggestions from nick * squashing commits and slimming down the build image * removing go* path from azure devops pipeline as we removed go mods * refactoring our azure devops pipeline so it's aligned with the local test runner * fixing azure devops pipeline bug * fixing base image build variable reference bug * Addressing nick's PR comments
2019-04-26 00:22:25 +03:00
```script
./test-harness/build-base-image.sh -g "<go_version>" -t "<terraform_version>"
```
Update main project readme (#79) * # This is a combination of 99 commits. # This is the 1st commit message: Adding docker test base image # This is the commit message #2: Adding test files # This is the commit message #3: testing # This is the commit message #4: Added folder # This is the commit message #5: Added folder # This is the commit message #6: Azure Devops CI Build Pipeline (#67) * Adding azure devops build pipeline * Adding README * Adding azure build badge # This is the commit message #7: saving latest tests # This is the commit message #8: Adding docker test base image (#68) # This is the commit message #9: EOD checkin # This is the commit message #10: posting latest # This is the commit message #11: eod commits # This is the commit message #12: eod commit # This is the commit message #13: refactored test directory structure # This is the commit message #14: Refactored build # This is the commit message #15: Adding hello world azure simple app # This is the commit message #16: Adding hello world azure simple app # This is the commit message #17: refactoring test harness # This is the commit message #18: refactoring test harness # This is the commit message #19: checking latest # This is the commit message #20: committing latest # This is the commit message #21: checking in latest changes # This is the commit message #22: Checking in latest progress # This is the commit message #23: applying final touches before PR submission # This is the commit message #24: updating azure keyvault secret names # This is the commit message #25: Checking in latest progress # This is the commit message #26: pushing latest pipeline definition # This is the commit message #27: updating build pipeline variable format # This is the commit message #28: updating build pipeline variable format # This is the commit message #29: cleaning up build variables # This is the commit message #30: adding minor changes to azure build pipeline # This is the commit message #31: updating azure keyvault secret names # This is the commit message #32: updating azure keyvault secret names # This is the commit message #33: fixing docker login azdo step # This is the commit message #34: fixing docker login azdo step # This is the commit message #35: fixing docker login azdo step # This is the commit message #36: fixing docker login azdo step # This is the commit message #37: updating build pipeline variables # This is the commit message #38: updating build pipeline variables # This is the commit message #39: updating build pipeline variables # This is the commit message #40: updating build pipeline variables # This is the commit message #41: updating build pipeline variables # This is the commit message #42: updating build pipeline variables # This is the commit message #43: applying fix to git diff script # This is the commit message #44: applying fix to git diff script # This is the commit message #45: applying fix to git diff script # This is the commit message #46: applying fix to git diff script # This is the commit message #47: applying fix to git diff script # This is the commit message #48: resolving pipeline bug # This is the commit message #49: fixing build error # This is the commit message #50: fixing build error # This is the commit message #51: fixing build error # This is the commit message #52: fixing build error # This is the commit message #53: fixing build error # This is the commit message #54: fixing build error # This is the commit message #55: fixing build error # This is the commit message #56: fixing build error # This is the commit message #57: fixing build error # This is the commit message #58: fixing build error # This is the commit message #59: fixing build error # This is the commit message #60: fixing build error # This is the commit message #61: fixing build error # This is the commit message #62: fixing build error # This is the commit message #63: fixing build error # This is the commit message #64: fixing build error # This is the commit message #65: fixing build error # This is the commit message #66: fixing build error # This is the commit message #67: fixing build error # This is the commit message #68: fixing build error # This is the commit message #69: fixing build error # This is the commit message #70: fixing build error # This is the commit message #71: fixing build error # This is the commit message #72: fixing build error # This is the commit message #73: trying acr fix # This is the commit message #74: latest changes # This is the commit message #75: removing docker dependency on azure devops pipeline # This is the commit message #76: removing docker dependency on azure devops pipeline # This is the commit message #77: removing docker dependency on azure devops pipeline # This is the commit message #78: removing docker dependency on azure devops pipeline # This is the commit message #79: removing docker dependency on azure devops pipeline # This is the commit message #80: removing docker dependency on azure devops pipeline # This is the commit message #81: removing docker dependency on azure devops pipeline # This is the commit message #82: removing docker dependency on azure devops pipeline # This is the commit message #83: removing docker dependency on azure devops pipeline # This is the commit message #84: removing docker dependency on azure devops pipeline # This is the commit message #85: removing docker dependency on azure devops pipeline # This is the commit message #86: removing docker dependency on azure devops pipeline # This is the commit message #87: removing docker dependency on azure devops pipeline # This is the commit message #88: removing docker dependency on azure devops pipeline # This is the commit message #89: removing docker dependency on azure devops pipeline # This is the commit message #90: removing docker dependency on azure devops pipeline # This is the commit message #91: removing docker dependency on azure devops pipeline # This is the commit message #92: removing docker dependency on azure devops pipeline # This is the commit message #93: removing docker dependency on azure devops pipeline # This is the commit message #94: removing docker dependency on azure devops pipeline # This is the commit message #95: removing docker dependency on azure devops pipeline # This is the commit message #96: removing docker dependency on azure devops pipeline # This is the commit message #97: removing docker dependency on azure devops pipeline # This is the commit message #98: final commit including resource name randomization # This is the commit message #99: Add provider to configure az infra for Terraform * resolving merge conflicts for squash Updated documentation based on review comments Integrate review comments for documentation. Add usage example for each of the providers Adding environment template descriptions removing go version var from azdo pipeline as it's unused removing unused setup folder adding more verbose logging for azure devops failure fixing pull request branch name resolution bug fixing pull request branch name resolution bug addressing nick's pr comments documenting script and docker images cleaning up required env var check fixing base branch bug Added service plan terraform templates to Azure Adding tags for resources Integrate review comments to add random id to name Add tags, capacity and reserved for service plan Minor Fixes for documentation Integrate review comments related to resource naming Remove Optional and Required in variables.tf Update variables.tf Update Service Plan Tier to Isolated squaching commits applied base image suggestions from nick * squashing commits and slimming down the build image * removing go* path from azure devops pipeline as we removed go mods * refactoring our azure devops pipeline so it's aligned with the local test runner * fixing azure devops pipeline bug * fixing base image build variable reference bug * Addressing nick's PR comments * resolving issue with failed builds after completing branches merges * addressing a bug where test harness directory changes were not getting picked up by the harness * removing local echo statement * Adding directory exists check and app service container command variable * addressing nick's PR comments * adding git diff extension whitelist filter * Overhauling main project readme * Adding james to the readme * Update README.md * Updating readme from the test-harness directory
2019-05-01 00:41:53 +03:00
##### Script Arguments
Update main project readme (#79) * # This is a combination of 99 commits. # This is the 1st commit message: Adding docker test base image # This is the commit message #2: Adding test files # This is the commit message #3: testing # This is the commit message #4: Added folder # This is the commit message #5: Added folder # This is the commit message #6: Azure Devops CI Build Pipeline (#67) * Adding azure devops build pipeline * Adding README * Adding azure build badge # This is the commit message #7: saving latest tests # This is the commit message #8: Adding docker test base image (#68) # This is the commit message #9: EOD checkin # This is the commit message #10: posting latest # This is the commit message #11: eod commits # This is the commit message #12: eod commit # This is the commit message #13: refactored test directory structure # This is the commit message #14: Refactored build # This is the commit message #15: Adding hello world azure simple app # This is the commit message #16: Adding hello world azure simple app # This is the commit message #17: refactoring test harness # This is the commit message #18: refactoring test harness # This is the commit message #19: checking latest # This is the commit message #20: committing latest # This is the commit message #21: checking in latest changes # This is the commit message #22: Checking in latest progress # This is the commit message #23: applying final touches before PR submission # This is the commit message #24: updating azure keyvault secret names # This is the commit message #25: Checking in latest progress # This is the commit message #26: pushing latest pipeline definition # This is the commit message #27: updating build pipeline variable format # This is the commit message #28: updating build pipeline variable format # This is the commit message #29: cleaning up build variables # This is the commit message #30: adding minor changes to azure build pipeline # This is the commit message #31: updating azure keyvault secret names # This is the commit message #32: updating azure keyvault secret names # This is the commit message #33: fixing docker login azdo step # This is the commit message #34: fixing docker login azdo step # This is the commit message #35: fixing docker login azdo step # This is the commit message #36: fixing docker login azdo step # This is the commit message #37: updating build pipeline variables # This is the commit message #38: updating build pipeline variables # This is the commit message #39: updating build pipeline variables # This is the commit message #40: updating build pipeline variables # This is the commit message #41: updating build pipeline variables # This is the commit message #42: updating build pipeline variables # This is the commit message #43: applying fix to git diff script # This is the commit message #44: applying fix to git diff script # This is the commit message #45: applying fix to git diff script # This is the commit message #46: applying fix to git diff script # This is the commit message #47: applying fix to git diff script # This is the commit message #48: resolving pipeline bug # This is the commit message #49: fixing build error # This is the commit message #50: fixing build error # This is the commit message #51: fixing build error # This is the commit message #52: fixing build error # This is the commit message #53: fixing build error # This is the commit message #54: fixing build error # This is the commit message #55: fixing build error # This is the commit message #56: fixing build error # This is the commit message #57: fixing build error # This is the commit message #58: fixing build error # This is the commit message #59: fixing build error # This is the commit message #60: fixing build error # This is the commit message #61: fixing build error # This is the commit message #62: fixing build error # This is the commit message #63: fixing build error # This is the commit message #64: fixing build error # This is the commit message #65: fixing build error # This is the commit message #66: fixing build error # This is the commit message #67: fixing build error # This is the commit message #68: fixing build error # This is the commit message #69: fixing build error # This is the commit message #70: fixing build error # This is the commit message #71: fixing build error # This is the commit message #72: fixing build error # This is the commit message #73: trying acr fix # This is the commit message #74: latest changes # This is the commit message #75: removing docker dependency on azure devops pipeline # This is the commit message #76: removing docker dependency on azure devops pipeline # This is the commit message #77: removing docker dependency on azure devops pipeline # This is the commit message #78: removing docker dependency on azure devops pipeline # This is the commit message #79: removing docker dependency on azure devops pipeline # This is the commit message #80: removing docker dependency on azure devops pipeline # This is the commit message #81: removing docker dependency on azure devops pipeline # This is the commit message #82: removing docker dependency on azure devops pipeline # This is the commit message #83: removing docker dependency on azure devops pipeline # This is the commit message #84: removing docker dependency on azure devops pipeline # This is the commit message #85: removing docker dependency on azure devops pipeline # This is the commit message #86: removing docker dependency on azure devops pipeline # This is the commit message #87: removing docker dependency on azure devops pipeline # This is the commit message #88: removing docker dependency on azure devops pipeline # This is the commit message #89: removing docker dependency on azure devops pipeline # This is the commit message #90: removing docker dependency on azure devops pipeline # This is the commit message #91: removing docker dependency on azure devops pipeline # This is the commit message #92: removing docker dependency on azure devops pipeline # This is the commit message #93: removing docker dependency on azure devops pipeline # This is the commit message #94: removing docker dependency on azure devops pipeline # This is the commit message #95: removing docker dependency on azure devops pipeline # This is the commit message #96: removing docker dependency on azure devops pipeline # This is the commit message #97: removing docker dependency on azure devops pipeline # This is the commit message #98: final commit including resource name randomization # This is the commit message #99: Add provider to configure az infra for Terraform * resolving merge conflicts for squash Updated documentation based on review comments Integrate review comments for documentation. Add usage example for each of the providers Adding environment template descriptions removing go version var from azdo pipeline as it's unused removing unused setup folder adding more verbose logging for azure devops failure fixing pull request branch name resolution bug fixing pull request branch name resolution bug addressing nick's pr comments documenting script and docker images cleaning up required env var check fixing base branch bug Added service plan terraform templates to Azure Adding tags for resources Integrate review comments to add random id to name Add tags, capacity and reserved for service plan Minor Fixes for documentation Integrate review comments related to resource naming Remove Optional and Required in variables.tf Update variables.tf Update Service Plan Tier to Isolated squaching commits applied base image suggestions from nick * squashing commits and slimming down the build image * removing go* path from azure devops pipeline as we removed go mods * refactoring our azure devops pipeline so it's aligned with the local test runner * fixing azure devops pipeline bug * fixing base image build variable reference bug * Addressing nick's PR comments * resolving issue with failed builds after completing branches merges * addressing a bug where test harness directory changes were not getting picked up by the harness * removing local echo statement * Adding directory exists check and app service container command variable * addressing nick's PR comments * adding git diff extension whitelist filter * Overhauling main project readme * Adding james to the readme * Update README.md * Updating readme from the test-harness directory
2019-05-01 00:41:53 +03:00
- `-g` | `--go_version`: Golang version specification. This argument drives the version of the `golang` stretch base image. **Defaults** to `1.11`.
- `-t` | `--tf_version`: Terraform version specification. This argument drives which terraform version release this image will use.. **Defaults** to `0.11.13`
Update main project readme (#79) * # This is a combination of 99 commits. # This is the 1st commit message: Adding docker test base image # This is the commit message #2: Adding test files # This is the commit message #3: testing # This is the commit message #4: Added folder # This is the commit message #5: Added folder # This is the commit message #6: Azure Devops CI Build Pipeline (#67) * Adding azure devops build pipeline * Adding README * Adding azure build badge # This is the commit message #7: saving latest tests # This is the commit message #8: Adding docker test base image (#68) # This is the commit message #9: EOD checkin # This is the commit message #10: posting latest # This is the commit message #11: eod commits # This is the commit message #12: eod commit # This is the commit message #13: refactored test directory structure # This is the commit message #14: Refactored build # This is the commit message #15: Adding hello world azure simple app # This is the commit message #16: Adding hello world azure simple app # This is the commit message #17: refactoring test harness # This is the commit message #18: refactoring test harness # This is the commit message #19: checking latest # This is the commit message #20: committing latest # This is the commit message #21: checking in latest changes # This is the commit message #22: Checking in latest progress # This is the commit message #23: applying final touches before PR submission # This is the commit message #24: updating azure keyvault secret names # This is the commit message #25: Checking in latest progress # This is the commit message #26: pushing latest pipeline definition # This is the commit message #27: updating build pipeline variable format # This is the commit message #28: updating build pipeline variable format # This is the commit message #29: cleaning up build variables # This is the commit message #30: adding minor changes to azure build pipeline # This is the commit message #31: updating azure keyvault secret names # This is the commit message #32: updating azure keyvault secret names # This is the commit message #33: fixing docker login azdo step # This is the commit message #34: fixing docker login azdo step # This is the commit message #35: fixing docker login azdo step # This is the commit message #36: fixing docker login azdo step # This is the commit message #37: updating build pipeline variables # This is the commit message #38: updating build pipeline variables # This is the commit message #39: updating build pipeline variables # This is the commit message #40: updating build pipeline variables # This is the commit message #41: updating build pipeline variables # This is the commit message #42: updating build pipeline variables # This is the commit message #43: applying fix to git diff script # This is the commit message #44: applying fix to git diff script # This is the commit message #45: applying fix to git diff script # This is the commit message #46: applying fix to git diff script # This is the commit message #47: applying fix to git diff script # This is the commit message #48: resolving pipeline bug # This is the commit message #49: fixing build error # This is the commit message #50: fixing build error # This is the commit message #51: fixing build error # This is the commit message #52: fixing build error # This is the commit message #53: fixing build error # This is the commit message #54: fixing build error # This is the commit message #55: fixing build error # This is the commit message #56: fixing build error # This is the commit message #57: fixing build error # This is the commit message #58: fixing build error # This is the commit message #59: fixing build error # This is the commit message #60: fixing build error # This is the commit message #61: fixing build error # This is the commit message #62: fixing build error # This is the commit message #63: fixing build error # This is the commit message #64: fixing build error # This is the commit message #65: fixing build error # This is the commit message #66: fixing build error # This is the commit message #67: fixing build error # This is the commit message #68: fixing build error # This is the commit message #69: fixing build error # This is the commit message #70: fixing build error # This is the commit message #71: fixing build error # This is the commit message #72: fixing build error # This is the commit message #73: trying acr fix # This is the commit message #74: latest changes # This is the commit message #75: removing docker dependency on azure devops pipeline # This is the commit message #76: removing docker dependency on azure devops pipeline # This is the commit message #77: removing docker dependency on azure devops pipeline # This is the commit message #78: removing docker dependency on azure devops pipeline # This is the commit message #79: removing docker dependency on azure devops pipeline # This is the commit message #80: removing docker dependency on azure devops pipeline # This is the commit message #81: removing docker dependency on azure devops pipeline # This is the commit message #82: removing docker dependency on azure devops pipeline # This is the commit message #83: removing docker dependency on azure devops pipeline # This is the commit message #84: removing docker dependency on azure devops pipeline # This is the commit message #85: removing docker dependency on azure devops pipeline # This is the commit message #86: removing docker dependency on azure devops pipeline # This is the commit message #87: removing docker dependency on azure devops pipeline # This is the commit message #88: removing docker dependency on azure devops pipeline # This is the commit message #89: removing docker dependency on azure devops pipeline # This is the commit message #90: removing docker dependency on azure devops pipeline # This is the commit message #91: removing docker dependency on azure devops pipeline # This is the commit message #92: removing docker dependency on azure devops pipeline # This is the commit message #93: removing docker dependency on azure devops pipeline # This is the commit message #94: removing docker dependency on azure devops pipeline # This is the commit message #95: removing docker dependency on azure devops pipeline # This is the commit message #96: removing docker dependency on azure devops pipeline # This is the commit message #97: removing docker dependency on azure devops pipeline # This is the commit message #98: final commit including resource name randomization # This is the commit message #99: Add provider to configure az infra for Terraform * resolving merge conflicts for squash Updated documentation based on review comments Integrate review comments for documentation. Add usage example for each of the providers Adding environment template descriptions removing go version var from azdo pipeline as it's unused removing unused setup folder adding more verbose logging for azure devops failure fixing pull request branch name resolution bug fixing pull request branch name resolution bug addressing nick's pr comments documenting script and docker images cleaning up required env var check fixing base branch bug Added service plan terraform templates to Azure Adding tags for resources Integrate review comments to add random id to name Add tags, capacity and reserved for service plan Minor Fixes for documentation Integrate review comments related to resource naming Remove Optional and Required in variables.tf Update variables.tf Update Service Plan Tier to Isolated squaching commits applied base image suggestions from nick * squashing commits and slimming down the build image * removing go* path from azure devops pipeline as we removed go mods * refactoring our azure devops pipeline so it's aligned with the local test runner * fixing azure devops pipeline bug * fixing base image build variable reference bug * Addressing nick's PR comments * resolving issue with failed builds after completing branches merges * addressing a bug where test harness directory changes were not getting picked up by the harness * removing local echo statement * Adding directory exists check and app service container command variable * addressing nick's PR comments * adding git diff extension whitelist filter * Overhauling main project readme * Adding james to the readme * Update README.md * Updating readme from the test-harness directory
2019-05-01 00:41:53 +03:00
Keep in mind that the terraform version should align with the version from the provider [module](/infra/modules/providers/azure/provider/main.tf#L6)
Update main project readme (#79) * # This is a combination of 99 commits. # This is the 1st commit message: Adding docker test base image # This is the commit message #2: Adding test files # This is the commit message #3: testing # This is the commit message #4: Added folder # This is the commit message #5: Added folder # This is the commit message #6: Azure Devops CI Build Pipeline (#67) * Adding azure devops build pipeline * Adding README * Adding azure build badge # This is the commit message #7: saving latest tests # This is the commit message #8: Adding docker test base image (#68) # This is the commit message #9: EOD checkin # This is the commit message #10: posting latest # This is the commit message #11: eod commits # This is the commit message #12: eod commit # This is the commit message #13: refactored test directory structure # This is the commit message #14: Refactored build # This is the commit message #15: Adding hello world azure simple app # This is the commit message #16: Adding hello world azure simple app # This is the commit message #17: refactoring test harness # This is the commit message #18: refactoring test harness # This is the commit message #19: checking latest # This is the commit message #20: committing latest # This is the commit message #21: checking in latest changes # This is the commit message #22: Checking in latest progress # This is the commit message #23: applying final touches before PR submission # This is the commit message #24: updating azure keyvault secret names # This is the commit message #25: Checking in latest progress # This is the commit message #26: pushing latest pipeline definition # This is the commit message #27: updating build pipeline variable format # This is the commit message #28: updating build pipeline variable format # This is the commit message #29: cleaning up build variables # This is the commit message #30: adding minor changes to azure build pipeline # This is the commit message #31: updating azure keyvault secret names # This is the commit message #32: updating azure keyvault secret names # This is the commit message #33: fixing docker login azdo step # This is the commit message #34: fixing docker login azdo step # This is the commit message #35: fixing docker login azdo step # This is the commit message #36: fixing docker login azdo step # This is the commit message #37: updating build pipeline variables # This is the commit message #38: updating build pipeline variables # This is the commit message #39: updating build pipeline variables # This is the commit message #40: updating build pipeline variables # This is the commit message #41: updating build pipeline variables # This is the commit message #42: updating build pipeline variables # This is the commit message #43: applying fix to git diff script # This is the commit message #44: applying fix to git diff script # This is the commit message #45: applying fix to git diff script # This is the commit message #46: applying fix to git diff script # This is the commit message #47: applying fix to git diff script # This is the commit message #48: resolving pipeline bug # This is the commit message #49: fixing build error # This is the commit message #50: fixing build error # This is the commit message #51: fixing build error # This is the commit message #52: fixing build error # This is the commit message #53: fixing build error # This is the commit message #54: fixing build error # This is the commit message #55: fixing build error # This is the commit message #56: fixing build error # This is the commit message #57: fixing build error # This is the commit message #58: fixing build error # This is the commit message #59: fixing build error # This is the commit message #60: fixing build error # This is the commit message #61: fixing build error # This is the commit message #62: fixing build error # This is the commit message #63: fixing build error # This is the commit message #64: fixing build error # This is the commit message #65: fixing build error # This is the commit message #66: fixing build error # This is the commit message #67: fixing build error # This is the commit message #68: fixing build error # This is the commit message #69: fixing build error # This is the commit message #70: fixing build error # This is the commit message #71: fixing build error # This is the commit message #72: fixing build error # This is the commit message #73: trying acr fix # This is the commit message #74: latest changes # This is the commit message #75: removing docker dependency on azure devops pipeline # This is the commit message #76: removing docker dependency on azure devops pipeline # This is the commit message #77: removing docker dependency on azure devops pipeline # This is the commit message #78: removing docker dependency on azure devops pipeline # This is the commit message #79: removing docker dependency on azure devops pipeline # This is the commit message #80: removing docker dependency on azure devops pipeline # This is the commit message #81: removing docker dependency on azure devops pipeline # This is the commit message #82: removing docker dependency on azure devops pipeline # This is the commit message #83: removing docker dependency on azure devops pipeline # This is the commit message #84: removing docker dependency on azure devops pipeline # This is the commit message #85: removing docker dependency on azure devops pipeline # This is the commit message #86: removing docker dependency on azure devops pipeline # This is the commit message #87: removing docker dependency on azure devops pipeline # This is the commit message #88: removing docker dependency on azure devops pipeline # This is the commit message #89: removing docker dependency on azure devops pipeline # This is the commit message #90: removing docker dependency on azure devops pipeline # This is the commit message #91: removing docker dependency on azure devops pipeline # This is the commit message #92: removing docker dependency on azure devops pipeline # This is the commit message #93: removing docker dependency on azure devops pipeline # This is the commit message #94: removing docker dependency on azure devops pipeline # This is the commit message #95: removing docker dependency on azure devops pipeline # This is the commit message #96: removing docker dependency on azure devops pipeline # This is the commit message #97: removing docker dependency on azure devops pipeline # This is the commit message #98: final commit including resource name randomization # This is the commit message #99: Add provider to configure az infra for Terraform * resolving merge conflicts for squash Updated documentation based on review comments Integrate review comments for documentation. Add usage example for each of the providers Adding environment template descriptions removing go version var from azdo pipeline as it's unused removing unused setup folder adding more verbose logging for azure devops failure fixing pull request branch name resolution bug fixing pull request branch name resolution bug addressing nick's pr comments documenting script and docker images cleaning up required env var check fixing base branch bug Added service plan terraform templates to Azure Adding tags for resources Integrate review comments to add random id to name Add tags, capacity and reserved for service plan Minor Fixes for documentation Integrate review comments related to resource naming Remove Optional and Required in variables.tf Update variables.tf Update Service Plan Tier to Isolated squaching commits applied base image suggestions from nick * squashing commits and slimming down the build image * removing go* path from azure devops pipeline as we removed go mods * refactoring our azure devops pipeline so it's aligned with the local test runner * fixing azure devops pipeline bug * fixing base image build variable reference bug * Addressing nick's PR comments * resolving issue with failed builds after completing branches merges * addressing a bug where test harness directory changes were not getting picked up by the harness * removing local echo statement * Adding directory exists check and app service container command variable * addressing nick's PR comments * adding git diff extension whitelist filter * Overhauling main project readme * Adding james to the readme * Update README.md * Updating readme from the test-harness directory
2019-05-01 00:41:53 +03:00
- The base image will be tagged as:
Update main project readme (#79) * # This is a combination of 99 commits. # This is the 1st commit message: Adding docker test base image # This is the commit message #2: Adding test files # This is the commit message #3: testing # This is the commit message #4: Added folder # This is the commit message #5: Added folder # This is the commit message #6: Azure Devops CI Build Pipeline (#67) * Adding azure devops build pipeline * Adding README * Adding azure build badge # This is the commit message #7: saving latest tests # This is the commit message #8: Adding docker test base image (#68) # This is the commit message #9: EOD checkin # This is the commit message #10: posting latest # This is the commit message #11: eod commits # This is the commit message #12: eod commit # This is the commit message #13: refactored test directory structure # This is the commit message #14: Refactored build # This is the commit message #15: Adding hello world azure simple app # This is the commit message #16: Adding hello world azure simple app # This is the commit message #17: refactoring test harness # This is the commit message #18: refactoring test harness # This is the commit message #19: checking latest # This is the commit message #20: committing latest # This is the commit message #21: checking in latest changes # This is the commit message #22: Checking in latest progress # This is the commit message #23: applying final touches before PR submission # This is the commit message #24: updating azure keyvault secret names # This is the commit message #25: Checking in latest progress # This is the commit message #26: pushing latest pipeline definition # This is the commit message #27: updating build pipeline variable format # This is the commit message #28: updating build pipeline variable format # This is the commit message #29: cleaning up build variables # This is the commit message #30: adding minor changes to azure build pipeline # This is the commit message #31: updating azure keyvault secret names # This is the commit message #32: updating azure keyvault secret names # This is the commit message #33: fixing docker login azdo step # This is the commit message #34: fixing docker login azdo step # This is the commit message #35: fixing docker login azdo step # This is the commit message #36: fixing docker login azdo step # This is the commit message #37: updating build pipeline variables # This is the commit message #38: updating build pipeline variables # This is the commit message #39: updating build pipeline variables # This is the commit message #40: updating build pipeline variables # This is the commit message #41: updating build pipeline variables # This is the commit message #42: updating build pipeline variables # This is the commit message #43: applying fix to git diff script # This is the commit message #44: applying fix to git diff script # This is the commit message #45: applying fix to git diff script # This is the commit message #46: applying fix to git diff script # This is the commit message #47: applying fix to git diff script # This is the commit message #48: resolving pipeline bug # This is the commit message #49: fixing build error # This is the commit message #50: fixing build error # This is the commit message #51: fixing build error # This is the commit message #52: fixing build error # This is the commit message #53: fixing build error # This is the commit message #54: fixing build error # This is the commit message #55: fixing build error # This is the commit message #56: fixing build error # This is the commit message #57: fixing build error # This is the commit message #58: fixing build error # This is the commit message #59: fixing build error # This is the commit message #60: fixing build error # This is the commit message #61: fixing build error # This is the commit message #62: fixing build error # This is the commit message #63: fixing build error # This is the commit message #64: fixing build error # This is the commit message #65: fixing build error # This is the commit message #66: fixing build error # This is the commit message #67: fixing build error # This is the commit message #68: fixing build error # This is the commit message #69: fixing build error # This is the commit message #70: fixing build error # This is the commit message #71: fixing build error # This is the commit message #72: fixing build error # This is the commit message #73: trying acr fix # This is the commit message #74: latest changes # This is the commit message #75: removing docker dependency on azure devops pipeline # This is the commit message #76: removing docker dependency on azure devops pipeline # This is the commit message #77: removing docker dependency on azure devops pipeline # This is the commit message #78: removing docker dependency on azure devops pipeline # This is the commit message #79: removing docker dependency on azure devops pipeline # This is the commit message #80: removing docker dependency on azure devops pipeline # This is the commit message #81: removing docker dependency on azure devops pipeline # This is the commit message #82: removing docker dependency on azure devops pipeline # This is the commit message #83: removing docker dependency on azure devops pipeline # This is the commit message #84: removing docker dependency on azure devops pipeline # This is the commit message #85: removing docker dependency on azure devops pipeline # This is the commit message #86: removing docker dependency on azure devops pipeline # This is the commit message #87: removing docker dependency on azure devops pipeline # This is the commit message #88: removing docker dependency on azure devops pipeline # This is the commit message #89: removing docker dependency on azure devops pipeline # This is the commit message #90: removing docker dependency on azure devops pipeline # This is the commit message #91: removing docker dependency on azure devops pipeline # This is the commit message #92: removing docker dependency on azure devops pipeline # This is the commit message #93: removing docker dependency on azure devops pipeline # This is the commit message #94: removing docker dependency on azure devops pipeline # This is the commit message #95: removing docker dependency on azure devops pipeline # This is the commit message #96: removing docker dependency on azure devops pipeline # This is the commit message #97: removing docker dependency on azure devops pipeline # This is the commit message #98: final commit including resource name randomization # This is the commit message #99: Add provider to configure az infra for Terraform * resolving merge conflicts for squash Updated documentation based on review comments Integrate review comments for documentation. Add usage example for each of the providers Adding environment template descriptions removing go version var from azdo pipeline as it's unused removing unused setup folder adding more verbose logging for azure devops failure fixing pull request branch name resolution bug fixing pull request branch name resolution bug addressing nick's pr comments documenting script and docker images cleaning up required env var check fixing base branch bug Added service plan terraform templates to Azure Adding tags for resources Integrate review comments to add random id to name Add tags, capacity and reserved for service plan Minor Fixes for documentation Integrate review comments related to resource naming Remove Optional and Required in variables.tf Update variables.tf Update Service Plan Tier to Isolated squaching commits applied base image suggestions from nick * squashing commits and slimming down the build image * removing go* path from azure devops pipeline as we removed go mods * refactoring our azure devops pipeline so it's aligned with the local test runner * fixing azure devops pipeline bug * fixing base image build variable reference bug * Addressing nick's PR comments * resolving issue with failed builds after completing branches merges * addressing a bug where test harness directory changes were not getting picked up by the harness * removing local echo statement * Adding directory exists check and app service container command variable * addressing nick's PR comments * adding git diff extension whitelist filter * Overhauling main project readme * Adding james to the readme * Update README.md * Updating readme from the test-harness directory
2019-05-01 00:41:53 +03:00
```script
msftcse/cobalt-test-base:g${GO_VERSION}t${TERRAFORM_VERSION}
```
Update main project readme (#79) * # This is a combination of 99 commits. # This is the 1st commit message: Adding docker test base image # This is the commit message #2: Adding test files # This is the commit message #3: testing # This is the commit message #4: Added folder # This is the commit message #5: Added folder # This is the commit message #6: Azure Devops CI Build Pipeline (#67) * Adding azure devops build pipeline * Adding README * Adding azure build badge # This is the commit message #7: saving latest tests # This is the commit message #8: Adding docker test base image (#68) # This is the commit message #9: EOD checkin # This is the commit message #10: posting latest # This is the commit message #11: eod commits # This is the commit message #12: eod commit # This is the commit message #13: refactored test directory structure # This is the commit message #14: Refactored build # This is the commit message #15: Adding hello world azure simple app # This is the commit message #16: Adding hello world azure simple app # This is the commit message #17: refactoring test harness # This is the commit message #18: refactoring test harness # This is the commit message #19: checking latest # This is the commit message #20: committing latest # This is the commit message #21: checking in latest changes # This is the commit message #22: Checking in latest progress # This is the commit message #23: applying final touches before PR submission # This is the commit message #24: updating azure keyvault secret names # This is the commit message #25: Checking in latest progress # This is the commit message #26: pushing latest pipeline definition # This is the commit message #27: updating build pipeline variable format # This is the commit message #28: updating build pipeline variable format # This is the commit message #29: cleaning up build variables # This is the commit message #30: adding minor changes to azure build pipeline # This is the commit message #31: updating azure keyvault secret names # This is the commit message #32: updating azure keyvault secret names # This is the commit message #33: fixing docker login azdo step # This is the commit message #34: fixing docker login azdo step # This is the commit message #35: fixing docker login azdo step # This is the commit message #36: fixing docker login azdo step # This is the commit message #37: updating build pipeline variables # This is the commit message #38: updating build pipeline variables # This is the commit message #39: updating build pipeline variables # This is the commit message #40: updating build pipeline variables # This is the commit message #41: updating build pipeline variables # This is the commit message #42: updating build pipeline variables # This is the commit message #43: applying fix to git diff script # This is the commit message #44: applying fix to git diff script # This is the commit message #45: applying fix to git diff script # This is the commit message #46: applying fix to git diff script # This is the commit message #47: applying fix to git diff script # This is the commit message #48: resolving pipeline bug # This is the commit message #49: fixing build error # This is the commit message #50: fixing build error # This is the commit message #51: fixing build error # This is the commit message #52: fixing build error # This is the commit message #53: fixing build error # This is the commit message #54: fixing build error # This is the commit message #55: fixing build error # This is the commit message #56: fixing build error # This is the commit message #57: fixing build error # This is the commit message #58: fixing build error # This is the commit message #59: fixing build error # This is the commit message #60: fixing build error # This is the commit message #61: fixing build error # This is the commit message #62: fixing build error # This is the commit message #63: fixing build error # This is the commit message #64: fixing build error # This is the commit message #65: fixing build error # This is the commit message #66: fixing build error # This is the commit message #67: fixing build error # This is the commit message #68: fixing build error # This is the commit message #69: fixing build error # This is the commit message #70: fixing build error # This is the commit message #71: fixing build error # This is the commit message #72: fixing build error # This is the commit message #73: trying acr fix # This is the commit message #74: latest changes # This is the commit message #75: removing docker dependency on azure devops pipeline # This is the commit message #76: removing docker dependency on azure devops pipeline # This is the commit message #77: removing docker dependency on azure devops pipeline # This is the commit message #78: removing docker dependency on azure devops pipeline # This is the commit message #79: removing docker dependency on azure devops pipeline # This is the commit message #80: removing docker dependency on azure devops pipeline # This is the commit message #81: removing docker dependency on azure devops pipeline # This is the commit message #82: removing docker dependency on azure devops pipeline # This is the commit message #83: removing docker dependency on azure devops pipeline # This is the commit message #84: removing docker dependency on azure devops pipeline # This is the commit message #85: removing docker dependency on azure devops pipeline # This is the commit message #86: removing docker dependency on azure devops pipeline # This is the commit message #87: removing docker dependency on azure devops pipeline # This is the commit message #88: removing docker dependency on azure devops pipeline # This is the commit message #89: removing docker dependency on azure devops pipeline # This is the commit message #90: removing docker dependency on azure devops pipeline # This is the commit message #91: removing docker dependency on azure devops pipeline # This is the commit message #92: removing docker dependency on azure devops pipeline # This is the commit message #93: removing docker dependency on azure devops pipeline # This is the commit message #94: removing docker dependency on azure devops pipeline # This is the commit message #95: removing docker dependency on azure devops pipeline # This is the commit message #96: removing docker dependency on azure devops pipeline # This is the commit message #97: removing docker dependency on azure devops pipeline # This is the commit message #98: final commit including resource name randomization # This is the commit message #99: Add provider to configure az infra for Terraform * resolving merge conflicts for squash Updated documentation based on review comments Integrate review comments for documentation. Add usage example for each of the providers Adding environment template descriptions removing go version var from azdo pipeline as it's unused removing unused setup folder adding more verbose logging for azure devops failure fixing pull request branch name resolution bug fixing pull request branch name resolution bug addressing nick's pr comments documenting script and docker images cleaning up required env var check fixing base branch bug Added service plan terraform templates to Azure Adding tags for resources Integrate review comments to add random id to name Add tags, capacity and reserved for service plan Minor Fixes for documentation Integrate review comments related to resource naming Remove Optional and Required in variables.tf Update variables.tf Update Service Plan Tier to Isolated squaching commits applied base image suggestions from nick * squashing commits and slimming down the build image * removing go* path from azure devops pipeline as we removed go mods * refactoring our azure devops pipeline so it's aligned with the local test runner * fixing azure devops pipeline bug * fixing base image build variable reference bug * Addressing nick's PR comments * resolving issue with failed builds after completing branches merges * addressing a bug where test harness directory changes were not getting picked up by the harness * removing local echo statement * Adding directory exists check and app service container command variable * addressing nick's PR comments * adding git diff extension whitelist filter * Overhauling main project readme * Adding james to the readme * Update README.md * Updating readme from the test-harness directory
2019-05-01 00:41:53 +03:00
#### Local Run Script
Update main project readme (#79) * # This is a combination of 99 commits. # This is the 1st commit message: Adding docker test base image # This is the commit message #2: Adding test files # This is the commit message #3: testing # This is the commit message #4: Added folder # This is the commit message #5: Added folder # This is the commit message #6: Azure Devops CI Build Pipeline (#67) * Adding azure devops build pipeline * Adding README * Adding azure build badge # This is the commit message #7: saving latest tests # This is the commit message #8: Adding docker test base image (#68) # This is the commit message #9: EOD checkin # This is the commit message #10: posting latest # This is the commit message #11: eod commits # This is the commit message #12: eod commit # This is the commit message #13: refactored test directory structure # This is the commit message #14: Refactored build # This is the commit message #15: Adding hello world azure simple app # This is the commit message #16: Adding hello world azure simple app # This is the commit message #17: refactoring test harness # This is the commit message #18: refactoring test harness # This is the commit message #19: checking latest # This is the commit message #20: committing latest # This is the commit message #21: checking in latest changes # This is the commit message #22: Checking in latest progress # This is the commit message #23: applying final touches before PR submission # This is the commit message #24: updating azure keyvault secret names # This is the commit message #25: Checking in latest progress # This is the commit message #26: pushing latest pipeline definition # This is the commit message #27: updating build pipeline variable format # This is the commit message #28: updating build pipeline variable format # This is the commit message #29: cleaning up build variables # This is the commit message #30: adding minor changes to azure build pipeline # This is the commit message #31: updating azure keyvault secret names # This is the commit message #32: updating azure keyvault secret names # This is the commit message #33: fixing docker login azdo step # This is the commit message #34: fixing docker login azdo step # This is the commit message #35: fixing docker login azdo step # This is the commit message #36: fixing docker login azdo step # This is the commit message #37: updating build pipeline variables # This is the commit message #38: updating build pipeline variables # This is the commit message #39: updating build pipeline variables # This is the commit message #40: updating build pipeline variables # This is the commit message #41: updating build pipeline variables # This is the commit message #42: updating build pipeline variables # This is the commit message #43: applying fix to git diff script # This is the commit message #44: applying fix to git diff script # This is the commit message #45: applying fix to git diff script # This is the commit message #46: applying fix to git diff script # This is the commit message #47: applying fix to git diff script # This is the commit message #48: resolving pipeline bug # This is the commit message #49: fixing build error # This is the commit message #50: fixing build error # This is the commit message #51: fixing build error # This is the commit message #52: fixing build error # This is the commit message #53: fixing build error # This is the commit message #54: fixing build error # This is the commit message #55: fixing build error # This is the commit message #56: fixing build error # This is the commit message #57: fixing build error # This is the commit message #58: fixing build error # This is the commit message #59: fixing build error # This is the commit message #60: fixing build error # This is the commit message #61: fixing build error # This is the commit message #62: fixing build error # This is the commit message #63: fixing build error # This is the commit message #64: fixing build error # This is the commit message #65: fixing build error # This is the commit message #66: fixing build error # This is the commit message #67: fixing build error # This is the commit message #68: fixing build error # This is the commit message #69: fixing build error # This is the commit message #70: fixing build error # This is the commit message #71: fixing build error # This is the commit message #72: fixing build error # This is the commit message #73: trying acr fix # This is the commit message #74: latest changes # This is the commit message #75: removing docker dependency on azure devops pipeline # This is the commit message #76: removing docker dependency on azure devops pipeline # This is the commit message #77: removing docker dependency on azure devops pipeline # This is the commit message #78: removing docker dependency on azure devops pipeline # This is the commit message #79: removing docker dependency on azure devops pipeline # This is the commit message #80: removing docker dependency on azure devops pipeline # This is the commit message #81: removing docker dependency on azure devops pipeline # This is the commit message #82: removing docker dependency on azure devops pipeline # This is the commit message #83: removing docker dependency on azure devops pipeline # This is the commit message #84: removing docker dependency on azure devops pipeline # This is the commit message #85: removing docker dependency on azure devops pipeline # This is the commit message #86: removing docker dependency on azure devops pipeline # This is the commit message #87: removing docker dependency on azure devops pipeline # This is the commit message #88: removing docker dependency on azure devops pipeline # This is the commit message #89: removing docker dependency on azure devops pipeline # This is the commit message #90: removing docker dependency on azure devops pipeline # This is the commit message #91: removing docker dependency on azure devops pipeline # This is the commit message #92: removing docker dependency on azure devops pipeline # This is the commit message #93: removing docker dependency on azure devops pipeline # This is the commit message #94: removing docker dependency on azure devops pipeline # This is the commit message #95: removing docker dependency on azure devops pipeline # This is the commit message #96: removing docker dependency on azure devops pipeline # This is the commit message #97: removing docker dependency on azure devops pipeline # This is the commit message #98: final commit including resource name randomization # This is the commit message #99: Add provider to configure az infra for Terraform * resolving merge conflicts for squash Updated documentation based on review comments Integrate review comments for documentation. Add usage example for each of the providers Adding environment template descriptions removing go version var from azdo pipeline as it's unused removing unused setup folder adding more verbose logging for azure devops failure fixing pull request branch name resolution bug fixing pull request branch name resolution bug addressing nick's pr comments documenting script and docker images cleaning up required env var check fixing base branch bug Added service plan terraform templates to Azure Adding tags for resources Integrate review comments to add random id to name Add tags, capacity and reserved for service plan Minor Fixes for documentation Integrate review comments related to resource naming Remove Optional and Required in variables.tf Update variables.tf Update Service Plan Tier to Isolated squaching commits applied base image suggestions from nick * squashing commits and slimming down the build image * removing go* path from azure devops pipeline as we removed go mods * refactoring our azure devops pipeline so it's aligned with the local test runner * fixing azure devops pipeline bug * fixing base image build variable reference bug * Addressing nick's PR comments * resolving issue with failed builds after completing branches merges * addressing a bug where test harness directory changes were not getting picked up by the harness * removing local echo statement * Adding directory exists check and app service container command variable * addressing nick's PR comments * adding git diff extension whitelist filter * Overhauling main project readme * Adding james to the readme * Update README.md * Updating readme from the test-harness directory
2019-05-01 00:41:53 +03:00
Run the test runner by calling the below script from the project's root directory. This is one of two options.
Update main project readme (#79) * # This is a combination of 99 commits. # This is the 1st commit message: Adding docker test base image # This is the commit message #2: Adding test files # This is the commit message #3: testing # This is the commit message #4: Added folder # This is the commit message #5: Added folder # This is the commit message #6: Azure Devops CI Build Pipeline (#67) * Adding azure devops build pipeline * Adding README * Adding azure build badge # This is the commit message #7: saving latest tests # This is the commit message #8: Adding docker test base image (#68) # This is the commit message #9: EOD checkin # This is the commit message #10: posting latest # This is the commit message #11: eod commits # This is the commit message #12: eod commit # This is the commit message #13: refactored test directory structure # This is the commit message #14: Refactored build # This is the commit message #15: Adding hello world azure simple app # This is the commit message #16: Adding hello world azure simple app # This is the commit message #17: refactoring test harness # This is the commit message #18: refactoring test harness # This is the commit message #19: checking latest # This is the commit message #20: committing latest # This is the commit message #21: checking in latest changes # This is the commit message #22: Checking in latest progress # This is the commit message #23: applying final touches before PR submission # This is the commit message #24: updating azure keyvault secret names # This is the commit message #25: Checking in latest progress # This is the commit message #26: pushing latest pipeline definition # This is the commit message #27: updating build pipeline variable format # This is the commit message #28: updating build pipeline variable format # This is the commit message #29: cleaning up build variables # This is the commit message #30: adding minor changes to azure build pipeline # This is the commit message #31: updating azure keyvault secret names # This is the commit message #32: updating azure keyvault secret names # This is the commit message #33: fixing docker login azdo step # This is the commit message #34: fixing docker login azdo step # This is the commit message #35: fixing docker login azdo step # This is the commit message #36: fixing docker login azdo step # This is the commit message #37: updating build pipeline variables # This is the commit message #38: updating build pipeline variables # This is the commit message #39: updating build pipeline variables # This is the commit message #40: updating build pipeline variables # This is the commit message #41: updating build pipeline variables # This is the commit message #42: updating build pipeline variables # This is the commit message #43: applying fix to git diff script # This is the commit message #44: applying fix to git diff script # This is the commit message #45: applying fix to git diff script # This is the commit message #46: applying fix to git diff script # This is the commit message #47: applying fix to git diff script # This is the commit message #48: resolving pipeline bug # This is the commit message #49: fixing build error # This is the commit message #50: fixing build error # This is the commit message #51: fixing build error # This is the commit message #52: fixing build error # This is the commit message #53: fixing build error # This is the commit message #54: fixing build error # This is the commit message #55: fixing build error # This is the commit message #56: fixing build error # This is the commit message #57: fixing build error # This is the commit message #58: fixing build error # This is the commit message #59: fixing build error # This is the commit message #60: fixing build error # This is the commit message #61: fixing build error # This is the commit message #62: fixing build error # This is the commit message #63: fixing build error # This is the commit message #64: fixing build error # This is the commit message #65: fixing build error # This is the commit message #66: fixing build error # This is the commit message #67: fixing build error # This is the commit message #68: fixing build error # This is the commit message #69: fixing build error # This is the commit message #70: fixing build error # This is the commit message #71: fixing build error # This is the commit message #72: fixing build error # This is the commit message #73: trying acr fix # This is the commit message #74: latest changes # This is the commit message #75: removing docker dependency on azure devops pipeline # This is the commit message #76: removing docker dependency on azure devops pipeline # This is the commit message #77: removing docker dependency on azure devops pipeline # This is the commit message #78: removing docker dependency on azure devops pipeline # This is the commit message #79: removing docker dependency on azure devops pipeline # This is the commit message #80: removing docker dependency on azure devops pipeline # This is the commit message #81: removing docker dependency on azure devops pipeline # This is the commit message #82: removing docker dependency on azure devops pipeline # This is the commit message #83: removing docker dependency on azure devops pipeline # This is the commit message #84: removing docker dependency on azure devops pipeline # This is the commit message #85: removing docker dependency on azure devops pipeline # This is the commit message #86: removing docker dependency on azure devops pipeline # This is the commit message #87: removing docker dependency on azure devops pipeline # This is the commit message #88: removing docker dependency on azure devops pipeline # This is the commit message #89: removing docker dependency on azure devops pipeline # This is the commit message #90: removing docker dependency on azure devops pipeline # This is the commit message #91: removing docker dependency on azure devops pipeline # This is the commit message #92: removing docker dependency on azure devops pipeline # This is the commit message #93: removing docker dependency on azure devops pipeline # This is the commit message #94: removing docker dependency on azure devops pipeline # This is the commit message #95: removing docker dependency on azure devops pipeline # This is the commit message #96: removing docker dependency on azure devops pipeline # This is the commit message #97: removing docker dependency on azure devops pipeline # This is the commit message #98: final commit including resource name randomization # This is the commit message #99: Add provider to configure az infra for Terraform * resolving merge conflicts for squash Updated documentation based on review comments Integrate review comments for documentation. Add usage example for each of the providers Adding environment template descriptions removing go version var from azdo pipeline as it's unused removing unused setup folder adding more verbose logging for azure devops failure fixing pull request branch name resolution bug fixing pull request branch name resolution bug addressing nick's pr comments documenting script and docker images cleaning up required env var check fixing base branch bug Added service plan terraform templates to Azure Adding tags for resources Integrate review comments to add random id to name Add tags, capacity and reserved for service plan Minor Fixes for documentation Integrate review comments related to resource naming Remove Optional and Required in variables.tf Update variables.tf Update Service Plan Tier to Isolated squaching commits applied base image suggestions from nick * squashing commits and slimming down the build image * removing go* path from azure devops pipeline as we removed go mods * refactoring our azure devops pipeline so it's aligned with the local test runner * fixing azure devops pipeline bug * fixing base image build variable reference bug * Addressing nick's PR comments * resolving issue with failed builds after completing branches merges * addressing a bug where test harness directory changes were not getting picked up by the harness * removing local echo statement * Adding directory exists check and app service container command variable * addressing nick's PR comments * adding git diff extension whitelist filter * Overhauling main project readme * Adding james to the readme * Update README.md * Updating readme from the test-harness directory
2019-05-01 00:41:53 +03:00
```script
./test-harness/local-run.sh
```
##### Script Arguments
- `-t` | `--template_name_override`: The template folder to include for the test harness run(i.e. -t "azure-simple-hw"). When set, the git log will be ignored. **Defaults** to the git log.
- `-b` | `--docker_base_image_name`: The base image to use for the test harness continer. **Defaults** to `msftcse/cobalt-test-base:g${GO_VERSION}t${TF_VERSION}`.
### Option 2: Manual Setup
The benefit with setting up the test harness manually is that runtimes are quicker as we're not rebuilding the test harness image on each run.
The clear downside here is that you'll need to set up all cobalt base software packages and responsible for managing version dependency upgrades over time. Our central base image in docker hub is supported by CSE as well as version dependency upgrades.
The other downside is that you'll need to install this project within your `GOPATH` and pull down all `dep` vendor dependency packages.
#### Prerequisites
- An Azure subscription
- A [service principal](https://docs.microsoft.com/en-us/azure/active-directory/develop/howto-create-service-principal-portal)
- An azure storage account for tracking terraform remote backend state. You can use our backend state setup [template](../infra/templates/backend-state-setup/README.md) to provision the storage resources.
- [git](https://www.atlassian.com/git/tutorials/install-git)
- Follow [these instructions](https://golang.org/doc/install#download) to download the Go Distribution.
- Follow these [instructions](https://golang.org/doc/install#testing) to test your golang install.
- Ensure that your repository is checked out into the following directory that does not live inside `$GOPATH`. Example:
```script
$ echo $GOPATH
/home/workspace/go
$ pwd
/home/workspace/oss/cobalt
```
- Install [Azure CLI](https://docs.microsoft.com/en-us/cli/azure/install-azure-cli?view=azure-cli-latest)
- Install golang's dep package manager via Git Bash.
```script
curl https://raw.githubusercontent.com/golang/dep/master/install.sh | sh
dep version
dep:
version : v0.5.0
build date : 2018-07-26
git hash : 224a564
go version : go1.10.3
go compiler : gc
platform : windows/amd64
features : ImportDuringSolve=false
```
- Install [Terraform](https://learn.hashicorp.com/terraform/getting-started/install.html)
#### Local Run Script (No-Docker Version)
Run the test runner by calling the below script from the project's root directory.
```script
./test-harness/local-run-wo-docker.sh
```
##### Script Arguments (No-Docker Version)
- `-t` | `--template_name_override`: The template folder to include for the test harness run(i.e. -t "azure-simple-hw"). When set, the git log will be ignored. **Defaults** to the git log.
- `-c` | `--tf_state_container`: The storage container name responsible for tracking remote state for terraform deployments. **Defaults** to `cobaltfstate-remote-state-container`
- `-a` | `--tf_state_storage_acct`: The storage account name responsible for tracking remote state for terraform deployments. **Defaults** to `cobaltfstate`.