@@ -501,7 +501,7 @@ def github_env_vars()
501501 assert_equal "https://example.override.endpoint.com" , @command_executor . s3_options [ :endpoint ] . to_s
502502 end
503503 end
504-
504+
505505 context "when no override endpoint provided and not using fips" do
506506 setup do
507507 InstanceAgent ::Config . config [ :s3_endpoint_override ] = nil
@@ -523,6 +523,31 @@ def github_env_vars()
523523 assert_true @command_executor . s3_options . include? :endpoint
524524 end
525525 end
526+
527+ context "when region is EU GovCloud with instance metadata" do
528+ setup do
529+ InstanceAgent ::Config . config [ :s3_endpoint_override ] = nil
530+ InstanceAgent ::Config . config [ :use_fips_mode ] = false
531+ ENV [ 'AWS_REGION' ] = nil
532+ InstanceMetadata . stubs ( :region ) . returns ( 'eusc-de-east-1' )
533+ end
534+ should "use S3 EU GovCloud specific endpoint" do
535+ assert_equal 'eusc-de-east-1' , @command_executor . s3_options [ :region ]
536+ assert_equal 'https://s3.eusc-de-east-1.amazonaws.eu' , @command_executor . s3_options [ :endpoint ]
537+ end
538+ end
539+
540+ context "when region is EU GovCloud" do
541+ setup do
542+ InstanceAgent ::Config . config [ :s3_endpoint_override ] = nil
543+ InstanceAgent ::Config . config [ :use_fips_mode ] = false
544+ ENV [ 'AWS_REGION' ] = 'eusc-de-east-1'
545+ end
546+ should "use S3 EU GovCloud specific endpoint" do
547+ assert_equal 'eusc-de-east-1' , @command_executor . s3_options [ :region ]
548+ assert_equal 'https://s3.eusc-de-east-1.amazonaws.eu' , @command_executor . s3_options [ :endpoint ]
549+ end
550+ end
526551 end
527552
528553 context "downloading bundle from S3" do
0 commit comments