Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Revert the "Revert "[#184549339] App autoscaler upgrade"" #3573

Merged
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions concourse/pipelines/create-cloudfoundry.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3545,7 +3545,7 @@ jobs:

echo 'Getting variables'
APP_AUTOSCALER_NS="/${DEPLOY_ENV}/app-autoscaler"
APP_AUTOSCALER_SERVICE_BROKER_PASSWORD="$(credhub get -q -n "${APP_AUTOSCALER_NS}/autoscaler_service_broker_password")"
APP_AUTOSCALER_SERVICE_BROKER_PASSWORD="$(credhub get -q -n "${APP_AUTOSCALER_NS}/service_broker_password")"

echo 'Setting secrets'
TEAM_NS="/concourse/main"
Expand All @@ -3567,9 +3567,9 @@ jobs:
CF_ADMIN: ((cf_admin))
CF_PASS: ((cf_pass))
DEPLOY_ENV: ((deploy_env))
APP_AUTOSCALER_SERVICE_BROKER_USERNAME: autoscaler_service_broker_user
APP_AUTOSCALER_SERVICE_BROKER_USERNAME: autoscaler-broker-user
APP_AUTOSCALER_SERVICE_BROKER_PASSWORD: ((autoscaler_service_broker_password))
APP_AUTOSCALER_SERVICE_BROKER_URL: https://autoscalerservicebroker.((system_dns_zone_name))
APP_AUTOSCALER_SERVICE_BROKER_URL: https://app-autoscalerservicebroker.((system_dns_zone_name))
run:
path: bash
args:
Expand Down
12 changes: 11 additions & 1 deletion concourse/tasks/app-autoscaler-acceptance-tests-run.yml
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,12 @@ run:
"admin_user": "$(cat admin-creds/username)",
"admin_password": "$(cat admin-creds/password)",

"eventgenerator_health_endpoint": "app-autoscaler-eventgenerator.$SYSTEM_DOMAIN/health",
"scalingengine_health_endpoint": "app-autoscaler-scalingengine.$SYSTEM_DOMAIN/health",
"operator_health_endpoint": "app-autoscaler-operator.$SYSTEM_DOMAIN/health",
"metricsforwarder_health_endpoint": "app-autoscaler-metricsforwarder.$SYSTEM_DOMAIN/health",
"scheduler_health_endpoint": "app-autoscaler-scheduler.$SYSTEM_DOMAIN/health",

"enable_service_access": false
}
EOF
Expand All @@ -58,7 +64,11 @@ run:

echo "Running tests"
cd paas-cf/manifests/app-autoscaler/upstream
git apply ../diffs/patch_dynamic_policy_test.patch
PATH=$(go env GOPATH)/bin:${PATH}
export PATH
cd src/acceptance
cd src/acceptance/assets/app/go_app
echo "Building tests"
make build
cd ../../..
./bin/test_default -procs 4 --compilers 4 --poll-progress-after=120s --poll-progress-interval=30s
13 changes: 13 additions & 0 deletions manifests/app-autoscaler/diffs/patch_dynamic_policy_test.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
diff --git a/src/acceptance/app/dynamic_policy_test.go b/src/acceptance/app/dynamic_policy_test.go
index 1339ff514..ff0a2fe47 100644
--- a/src/acceptance/app/dynamic_policy_test.go
+++ b/src/acceptance/app/dynamic_policy_test.go
@@ -50,7 +50,7 @@ var _ = Describe("AutoScaler dynamic policy", func() {

It("should scale out and then back in.", Label(acceptance.LabelSmokeTests), func() {
By(fmt.Sprintf("Use heap %d mb of heap on app", heapToUse))
- CurlAppInstance(cfg, appName, 0, fmt.Sprintf("/memory/%d/5", heapToUse))
+ CurlAppInstance(cfg, appName, 0, fmt.Sprintf("/memory/%d/5", heapToUse+20))

By("wait for scale to 2")
WaitForNInstancesRunning(appGUID, 2, 5*time.Minute)
16 changes: 12 additions & 4 deletions manifests/app-autoscaler/operations.d/001-release.yml
Original file line number Diff line number Diff line change
@@ -1,9 +1,17 @@
---

# UPGRADE WARNING!
# The 11.4.2 release of app-autscaler-release has been patched to fix the acceptance tests.
# See this issue: https://github.com/cloudfoundry/app-autoscaler-release/issues/2434
# The patch file can be found here:
# paas-cf/manifests/app-autoscaler/diffs/patch_dynamic_policy_test.patch
# This patch is applied as part of the concourse task. See:
# concourse/tasks/app-autoscaler-acceptance-tests-run.yml

- type: replace
path: /releases/name=app-autoscaler?
value:
name: app-autoscaler
version: "10.0.0"
url: "https://bosh.io/d/github.com/cloudfoundry-incubator/app-autoscaler-release?v=10.0.0"
sha1: "f691986b6f14e5bc1974e8c0b02996e9e2497a61"
name: "app-autoscaler"
version: "11.4.2"
url: "https://bosh.io/d/github.com/cloudfoundry-incubator/app-autoscaler-release?v=11.4.2"
sha1: "e3e3c292122acd8f14b825f24051ad4b7330ffd5"
32 changes: 26 additions & 6 deletions manifests/app-autoscaler/operations.d/002-links.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,14 @@
path: /addons/name=bosh-dns-aliases/jobs/name=bosh-dns-aliases/properties/aliases/domain=reverse-log-proxy.service.cf.internal/targets/instance_group=log-api/deployment
value: ((deploy_env))

- type: replace
path: /addons/name=bosh-dns-aliases/jobs/name=bosh-dns-aliases/properties/aliases/domain=log-cache.service.cf.internal/targets/instance_group=log-cache/deployment
value: ((deploy_env))

- type: replace
path: /addons/name=bosh-dns-aliases/jobs/name=bosh-dns-aliases/properties/aliases/domain=logcache/targets/instance_group=log-cache/deployment
value: ((deploy_env))

- type: replace
path: /addons/name=bosh-dns-aliases/jobs/name=bosh-dns-aliases/properties/aliases/domain=nats.service.cf.internal/targets/instance_group=nats/deployment
value: ((deploy_env))
Expand All @@ -13,22 +21,34 @@
value: ((deploy_env))

- type: replace
path: /instance_groups/name=asapi/jobs/name=route_registrar/consumes/nats/deployment
path: /instance_groups/name=apiserver/jobs/name=route_registrar/consumes/nats/deployment
value: ((deploy_env))

- type: replace
path: /instance_groups/name=metricsforwarder/jobs/name=loggregator_agent/consumes/doppler/deployment
value: ((deploy_env))

- type: replace
path: /instance_groups/name=scalingengine/jobs/name=route_registrar/consumes/nats/deployment
value: ((deploy_env))

- type: replace
path: /instance_groups/name=operator/jobs/name=route_registrar/consumes/nats/deployment
value: ((deploy_env))

- type: replace
path: /instance_groups/name=asapi/jobs/name=loggregator_agent/consumes/doppler/deployment
path: /instance_groups/name=scheduler/jobs/name=route_registrar/consumes/nats/deployment
value: ((deploy_env))

- type: replace
path: /instance_groups/name=asactors/jobs/name=route_registrar/consumes/nats/deployment
path: /instance_groups/name=metricsserver/jobs/name=route_registrar/consumes/nats/deployment
value: ((deploy_env))

- type: replace
path: /instance_groups/name=asmetrics/jobs/name=route_registrar/consumes/nats/deployment
path: /instance_groups/name=eventgenerator/jobs/name=route_registrar/consumes/nats/deployment
value: ((deploy_env))

- type: replace
path: /instance_groups/name=asnozzle/jobs/name=route_registrar/consumes/nats/deployment
path: /instance_groups/name=metricsgateway/jobs/name=route_registrar/consumes/nats/deployment
value: ((deploy_env))


36 changes: 25 additions & 11 deletions manifests/app-autoscaler/operations.d/031-bosh-dns-aliases.yml
Original file line number Diff line number Diff line change
@@ -1,37 +1,45 @@
---
- type: remove
path: /addons/name=bosh-dns-aliases/jobs/name=bosh-dns-aliases/properties/aliases/domain=autoscalerpostgres.service.cf.internal
path: /addons/name=bosh-dns-aliases/jobs/name=bosh-dns-aliases/properties/aliases/domain=((deployment_name)).autoscalerpostgres.service.cf.internal

- type: replace
path: /addons/name=bosh-dns-aliases/jobs/name=bosh-dns-aliases/properties/aliases/domain=apiserver.service.cf.internal/targets/0/network
path: /addons/name=bosh-dns-aliases/jobs/name=bosh-dns-aliases/properties/aliases/domain=((deployment_name)).apiserver.service.cf.internal/targets/0/network
value: cf

- type: replace
path: /addons/name=bosh-dns-aliases/jobs/name=bosh-dns-aliases/properties/aliases/domain=autoscalerscheduler.service.cf.internal/targets/0/network
path: /addons/name=bosh-dns-aliases/jobs/name=bosh-dns-aliases/properties/aliases/domain=((deployment_name)).autoscalerscheduler.service.cf.internal/targets/0/network
value: cf

- type: replace
path: /addons/name=bosh-dns-aliases/jobs/name=bosh-dns-aliases/properties/aliases/domain=servicebroker.service.cf.internal/targets/0/network
path: /addons/name=bosh-dns-aliases/jobs/name=bosh-dns-aliases/properties/aliases/domain=((deployment_name)).servicebroker.service.cf.internal/targets/0/network
value: cf

- type: replace
path: /addons/name=bosh-dns-aliases/jobs/name=bosh-dns-aliases/properties/aliases/domain=eventgenerator.service.cf.internal/targets/0/network
path: /addons/name=bosh-dns-aliases/jobs/name=bosh-dns-aliases/properties/aliases/domain=((deployment_name)).eventgenerator.service.cf.internal/targets/0/network
value: cf

- type: replace
path: /addons/name=bosh-dns-aliases/jobs/name=bosh-dns-aliases/properties/aliases/domain=scalingengine.service.cf.internal/targets/0/network
path: /addons/name=bosh-dns-aliases/jobs/name=bosh-dns-aliases/properties/aliases/domain=((deployment_name)).scalingengine.service.cf.internal/targets/0/network
value: cf

- type: replace
path: /addons/name=bosh-dns-aliases/jobs/name=bosh-dns-aliases/properties/aliases/domain=reverse-log-proxy.service.cf.internal/targets/0/network
value: cf

- type: replace
path: /addons/name=bosh-dns-aliases/jobs/name=bosh-dns-aliases/properties/aliases/domain=metricsgateway.service.cf.internal/targets/0/network
path: /addons/name=bosh-dns-aliases/jobs/name=bosh-dns-aliases/properties/aliases/domain=log-cache.service.cf.internal/targets/0/network
value: cf

- type: replace
path: /addons/name=bosh-dns-aliases/jobs/name=bosh-dns-aliases/properties/aliases/domain=metricsserver.service.cf.internal/targets/0/network
path: /addons/name=bosh-dns-aliases/jobs/name=bosh-dns-aliases/properties/aliases/domain=logcache/targets/0/network
value: cf

- type: replace
path: /addons/name=bosh-dns-aliases/jobs/name=bosh-dns-aliases/properties/aliases/domain=((deployment_name)).metricsgateway.service.cf.internal/targets/0/network
value: cf

- type: replace
path: /addons/name=bosh-dns-aliases/jobs/name=bosh-dns-aliases/properties/aliases/domain=((deployment_name)).metricsserver.service.cf.internal/targets/0/network
value: cf

- type: replace
Expand All @@ -43,7 +51,13 @@
value: cf

- type: replace
path: /variables/name=metricsserver_server/options/alternative_names
path: /variables/name=eventgenerator_server_cert/options/alternative_names
value:
- "((deployment_name)).eventgenerator.service.cf.internal"
- "*.eventgenerator.cf.((deployment_name)).bosh"

- type: replace
path: /variables/name=metricsserver_server_cert/options/alternative_names
value:
- "metricsserver.service.cf.internal"
- "*.asmetrics.cf.app-autoscaler.bosh"
- "((deployment_name)).metricsserver.service.cf.internal"
- "*.metricsserver.cf.((deployment_name)).bosh"
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
---

# autoscaler.((system_domain)) remains the cf cli autoscaler plugin's
# default presumed endpoint.
- type: replace
path: /instance_groups/name=apiserver/jobs/name=route_registrar/properties/route_registrar/routes/name=api_server/uris
value:
- autoscaler.((system_domain))
Original file line number Diff line number Diff line change
@@ -1,33 +1,24 @@
---
- type: replace
path: /variables/name=scalingengine_server/update_mode?
path: /variables/name=scalingengine_server_cert/update_mode?
value: converge

- type: replace
path: /variables/name=eventgenerator_server/update_mode?
path: /variables/name=eventgenerator_server_cert/update_mode?
value: converge

- type: replace
path: /variables/name=apiserver_server/update_mode?
path: /variables/name=apiserver_server_cert/update_mode?
value: converge

- type: replace
path: /variables/name=apiserver_public_server/update_mode?
path: /variables/name=servicebroker_server_cert/update_mode?
value: converge

- type: replace
path: /variables/name=servicebroker_server/update_mode?
path: /variables/name=scheduler_server_cert/update_mode?
value: converge

- type: replace
path: /variables/name=servicebroker_public_server/update_mode?
path: /variables/name=metricsserver_server_cert/update_mode?
value: converge

- type: replace
path: /variables/name=scheduler_server/update_mode?
value: converge

- type: replace
path: /variables/name=postgres_server/update_mode?
value: converge

Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
---
# https://github.com/cloudfoundry/app-autoscaler-release/pull/1295
- type: replace
path: /variables/name=service_broker_password/options/length?
value: 72

- type: replace
path: /variables/name=service_broker_password/update_mode?
value: converge

- type: replace
path: /variables/name=service_broker_password_blue/options/length?
value: 72

- type: replace
path: /variables/name=service_broker_password_blue/update_mode?
value: converge

Original file line number Diff line number Diff line change
@@ -1,16 +1,32 @@
---
- type: replace
path: /instance_groups/name=asactors/jobs/name=route_registrar/consumes/nats-tls/deployment?
path: /instance_groups/name=scalingengine/jobs/name=route_registrar/consumes/nats-tls/deployment?
value: ((deploy_env))

- type: replace
path: /instance_groups/name=asapi/jobs/name=route_registrar/consumes/nats-tls/deployment?
path: /instance_groups/name=scheduler/jobs/name=route_registrar/consumes/nats-tls/deployment?
value: ((deploy_env))

- type: replace
path: /instance_groups/name=asnozzle/jobs/name=route_registrar/consumes/nats-tls/deployment?
path: /instance_groups/name=operator/jobs/name=route_registrar/consumes/nats-tls/deployment?
value: ((deploy_env))

- type: replace
path: /instance_groups/name=asmetrics/jobs/name=route_registrar/consumes/nats-tls/deployment?
path: /instance_groups/name=apiserver/jobs/name=route_registrar/consumes/nats-tls/deployment?
value: ((deploy_env))

- type: replace
path: /instance_groups/name=metricsforwarder/jobs/name=route_registrar/consumes/nats-tls/deployment?
value: ((deploy_env))

- type: replace
path: /instance_groups/name=metricsgateway/jobs/name=route_registrar/consumes/nats-tls/deployment?
value: ((deploy_env))

- type: replace
path: /instance_groups/name=eventgenerator/jobs/name=route_registrar/consumes/nats-tls/deployment?
value: ((deploy_env))

- type: replace
path: /instance_groups/name=metricsserver/jobs/name=route_registrar/consumes/nats-tls/deployment?
value: ((deploy_env))
28 changes: 24 additions & 4 deletions manifests/app-autoscaler/operations.d/100-update-networks.yml
Original file line number Diff line number Diff line change
@@ -1,21 +1,41 @@
---

- type: replace
path: /instance_groups/name=asactors/networks
path: /instance_groups/name=scalingengine/networks
value:
- name: cf

- type: replace
path: /instance_groups/name=asmetrics/networks
path: /instance_groups/name=scheduler/networks
value:
- name: cf

- type: replace
path: /instance_groups/name=asapi/networks
path: /instance_groups/name=operator/networks
value:
- name: cf

- type: replace
path: /instance_groups/name=asnozzle/networks
path: /instance_groups/name=metricsforwarder/networks
value:
- name: cf

- type: replace
path: /instance_groups/name=metricsserver/networks
value:
- name: cf

- type: replace
path: /instance_groups/name=eventgenerator/networks
value:
- name: cf

- type: replace
path: /instance_groups/name=apiserver/networks
value:
- name: cf

- type: replace
path: /instance_groups/name=metricsgateway/networks
value:
- name: cf
Loading