Skip to content

Commit

Permalink
Add support for alicloud blobstore
Browse files Browse the repository at this point in the history
  • Loading branch information
xiaozhu36 committed Jun 26, 2018
1 parent 502b4c5 commit 972b678
Show file tree
Hide file tree
Showing 4 changed files with 67 additions and 0 deletions.
2 changes: 2 additions & 0 deletions operations/README.md
Expand Up @@ -12,6 +12,8 @@ This is the README for Ops-files. To learn more about `cf-deployment`, go to the

| Name | Purpose | Notes |
|:--- |:--- |:--- |
| **Alibaba Cloud** | | |
| [`use-alicloud-oss-blobstore.yml`](use-alicloud-oss-blobstore.yml) | Configures external blobstore to use Alibaba Cloud OSS blobstore. | Requires `use-external-blobstore.yml`. Introduces [new variables](example-vars-files/vars-use-alicloud-oss-blobstore.yml) for oss credentials and bucket names. |
| **AWS** | | |
| [`aws.yml`](aws.yml) | Overrides the loggregator endpoint port to 4443. | It is required to have a separate port from the standard HTTPS port (443) for loggregator traffic in order to use "classic" AWS ELBs. Newer Application Load Balancers should not require this port override, so no need to use this ops-file if you're using the newer load balancer. |
| [`use-s3-blobstore.yml`](use-s3-blobstore.yml) | Configures external blobstore to use Amazon S3. | Requires `use-external-blobstore.yml`. Introduces [new variables](example-vars-files/vars-use-s3-blobstore.yml) for s3 credentials and bucket names. |
Expand Down
@@ -0,0 +1,8 @@
blobstore_region: cn-hangzhou
blobstore_access_key_id: example-access-key-id
blobstore_secret_access_key: example-secret-access-key
blobstore_bucket_name: example-oss-bucket-name
app_package_directory_key: example-app-package-directory-key
buildpack_directory_key: example-buildpack-directory-key
droplet_directory_key: example-droplet-directory-key
resource_directory_key: example-resource-directory-key
56 changes: 56 additions & 0 deletions operations/use-alicloud-oss-blobstore.yml
@@ -0,0 +1,56 @@
---
# Note: Capi release version 1.61.0 or more is required to use Alibaba Cloud OSS as CF blobstore.

- type: replace
path: /instance_groups/name=api/jobs/name=cloud_controller_ng/properties/cc/buildpacks/fog_connection
error: "Please apply 'use-external-blobstore.yml' before applying 'use-alicloud-oss-blobstore.yml'."
value: &blobstore-properties
provider: aliyun
aliyun_accesskey_id: ((blobstore_access_key_id))
aliyun_accesskey_secret: ((blobstore_secret_access_key))
aliyun_region_id: ((blobstore_region))
aliyun_oss_bucket: ((blobstore_bucket_name))

- type: replace
path: /instance_groups/name=api/jobs/name=cloud_controller_ng/properties/cc/droplets/fog_connection
value: *blobstore-properties

- type: replace
path: /instance_groups/name=api/jobs/name=cloud_controller_ng/properties/cc/packages/fog_connection
value: *blobstore-properties

- type: replace
path: /instance_groups/name=api/jobs/name=cloud_controller_ng/properties/cc/resource_pool/fog_connection
value: *blobstore-properties

- type: replace
path: /instance_groups/name=cc-worker/jobs/name=cloud_controller_worker/properties/cc/buildpacks/fog_connection
value: *blobstore-properties

- type: replace
path: /instance_groups/name=cc-worker/jobs/name=cloud_controller_worker/properties/cc/droplets/fog_connection
value: *blobstore-properties

- type: replace
path: /instance_groups/name=cc-worker/jobs/name=cloud_controller_worker/properties/cc/packages/fog_connection
value: *blobstore-properties

- type: replace
path: /instance_groups/name=cc-worker/jobs/name=cloud_controller_worker/properties/cc/resource_pool/fog_connection
value: *blobstore-properties

- type: replace
path: /instance_groups/name=scheduler/jobs/name=cloud_controller_clock/properties/cc/buildpacks/fog_connection
value: *blobstore-properties

- type: replace
path: /instance_groups/name=scheduler/jobs/name=cloud_controller_clock/properties/cc/droplets/fog_connection
value: *blobstore-properties

- type: replace
path: /instance_groups/name=scheduler/jobs/name=cloud_controller_clock/properties/cc/packages/fog_connection
value: *blobstore-properties

- type: replace
path: /instance_groups/name=scheduler/jobs/name=cloud_controller_clock/properties/cc/resource_pool/fog_connection
value: *blobstore-properties
1 change: 1 addition & 0 deletions scripts/test-standard-ops.sh
Expand Up @@ -54,6 +54,7 @@ test_standard_ops() {
fail "use-latest-windows-stemcell.yml, expected 'latest' but got '${version}'"
fi
check_interpolation "use-postgres.yml"
check_interpolation "name: use-alicloud-oss-blobstore.yml" "use-external-blobstore.yml -o use-alicloud-oss-blobstore.yml -l example-vars-files/vars-use-alicloud-oss-blobstore.yml"
check_interpolation "name: use-s3-blobstore.yml" "use-external-blobstore.yml -o use-s3-blobstore.yml -l example-vars-files/vars-use-s3-blobstore.yml"
check_interpolation "name: use-gcs-blobstore-access-key.yml" "use-external-blobstore.yml -o use-gcs-blobstore-access-key.yml
-v blobstore_access_key_id=TEST_ACCESS_KEY -v blobstore_secret_access_key=TEST_SECRET_ACCESS_KEY -l example-vars-files/vars-use-gcs-blobstore-access-key.yml"
Expand Down

0 comments on commit 972b678

Please sign in to comment.