Merge pull request #1437 from pulumi/ellismg/public-build
Support local build and test runs without AWS credentials
This commit is contained in:
commit
a38b647652
14
build.proj
14
build.proj
|
@ -20,13 +20,6 @@
|
|||
WorkingDirectory="$(NodeJSSdkDirectory)" />
|
||||
</Target>
|
||||
|
||||
<Target Name="EnsurePrebuilt">
|
||||
<MakeDir Directories="$(NodeJSSdkDirectory)\prebuilt" />
|
||||
<Exec Command="aws s3 cp s3://eng.pulumi.com/nativeruntime/windows/nativeruntime.node "$(NodeJSSdkDirectory)\prebuilt\nativeruntime.node"" />
|
||||
<Exec Command="aws s3 cp s3://eng.pulumi.com/nativeruntime/windows/nativeruntime-v0.11.0.node "$(NodeJSSdkDirectory)\prebuilt\nativeruntime-v0.11.0.node"" />
|
||||
<Exec Command="aws s3 cp s3://eng.pulumi.com/nativeruntime/windows/pulumi-language-nodejs-node.exe "$(NodeJSSdkDirectory)\prebuilt\pulumi-language-nodejs-node.exe"" />
|
||||
</Target>
|
||||
|
||||
<Target Name="TypeScriptCompileNodeSdk">
|
||||
<Exec Command=""$(MSBuildThisFileDirectory)\scripts\get-version.cmd"" ConsoleToMSBuild="true" Condition="'$(Version)' == ''">
|
||||
<Output TaskParameter="ConsoleOutput" PropertyName="Version" />
|
||||
|
@ -76,11 +69,6 @@
|
|||
<Target Name="BinPlaceNodeSdk"
|
||||
DependsOnTargets="BinPlaceNodeSdkProtos;BinPlaceNodeSdkTestData;YarnLinkSdk">
|
||||
<Copy SourceFiles="$(NodeJSSdkDirectory)\dist\pulumi-resource-pulumi-nodejs.cmd" DestinationFolder="$(PulumiBin)" />
|
||||
<MakeDir Directories="$(PulumiBin)\v6.10.2" />
|
||||
<MakeDir Directories="$(PulumiBin)\custom_node" />
|
||||
<Copy SourceFiles="$(NodeJSSdkDirectory)\prebuilt\nativeruntime.node" DestinationFolder="$(PulumiBin)\v6.10.2" />
|
||||
<Copy SourceFiles="$(NodeJSSdkDirectory)\prebuilt\nativeruntime-v0.11.0.node" DestinationFolder="$(PulumiBin)\v6.10.2" />
|
||||
<Copy SourceFiles="$(NodeJSSdkDirectory)\prebuilt\pulumi-language-nodejs-node.exe" DestinationFiles="$(PulumiBin)\custom_node\node.exe" />
|
||||
</Target>
|
||||
|
||||
<Target Name="BuildNodeSdk"
|
||||
|
@ -101,7 +89,7 @@
|
|||
</Target>
|
||||
|
||||
<Target Name="Build"
|
||||
DependsOnTargets="EnsureGoDependencies;EnsureNodeDependencies;EnsurePrebuilt;BuildNodeSdk;BuildGoCmds">
|
||||
DependsOnTargets="EnsureGoDependencies;EnsureNodeDependencies;BuildNodeSdk;BuildGoCmds">
|
||||
</Target>
|
||||
|
||||
<Target Name="IntegrationTest">
|
||||
|
|
|
@ -92,10 +92,7 @@ func TestExamples(t *testing.T) {
|
|||
}
|
||||
|
||||
for _, example := range examples {
|
||||
ex := example.With(integration.ProgramTestOptions{
|
||||
ReportStats: integration.NewS3Reporter("us-west-2", "eng.pulumi.com", "testreports"),
|
||||
Tracing: "https://tracing.pulumi-engineering.com/collector/api/v1/spans",
|
||||
})
|
||||
ex := example
|
||||
t.Run(example.Dir, func(t *testing.T) {
|
||||
integration.ProgramTest(t, &ex)
|
||||
})
|
||||
|
|
|
@ -328,6 +328,23 @@ func ProgramTest(t *testing.T, opts *ProgramTestOptions) {
|
|||
}
|
||||
}()
|
||||
|
||||
// Set up some default values for sending test reports and tracing data. We use environment varaiables to
|
||||
// control these globally and set reasonable values for our own use in CI.
|
||||
if opts.ReportStats == nil {
|
||||
if v := os.Getenv("PULUMI_TEST_REPORT_CONFIG"); v != "" {
|
||||
splits := strings.Split(v, ":")
|
||||
if len(splits) != 3 {
|
||||
t.Errorf("report config should be set to a value of the form: <aws-region>:<bucket-name>:<keyPrefix>")
|
||||
}
|
||||
|
||||
opts.ReportStats = NewS3Reporter(splits[0], splits[1], splits[2])
|
||||
}
|
||||
}
|
||||
|
||||
if opts.Tracing == "" {
|
||||
opts.Tracing = os.Getenv("PULUMI_TEST_TRACE_ENDPOINT")
|
||||
}
|
||||
|
||||
pt := newProgramTester(t, opts)
|
||||
err := pt.testLifeCycleInitAndDestroy()
|
||||
assert.NoError(t, err)
|
||||
|
|
|
@ -34,12 +34,6 @@ CopyPackage "$Root\sdk\nodejs\bin" "pulumi"
|
|||
|
||||
Copy-Item "$Root\sdk\nodejs\dist\pulumi-resource-pulumi-nodejs.cmd" "$PublishDir\bin"
|
||||
|
||||
New-Item -ItemType Directory -Path "$PublishDir\bin\v6.10.2" | Out-Null
|
||||
New-Item -ItemType Directory -Path "$PublishDir\bin\custom_node" | Out-Null
|
||||
Copy-Item "$Root\sdk\nodejs\prebuilt\nativeruntime.node" "$PublishDir\bin\v6.10.2"
|
||||
Copy-Item "$Root\sdk\nodejs\prebuilt\nativeruntime-v0.11.0.node" "$PublishDir\bin\v6.10.2"
|
||||
Copy-Item "$Root\sdk\nodejs\prebuilt\pulumi-language-nodejs-node.exe" "$PublishDir\bin\custom_node\node.exe"
|
||||
|
||||
# By default, if the archive already exists, 7zip will just add files to it, so blow away the existing
|
||||
# archive if it exists.
|
||||
if (Test-Path $PublishFile) {
|
||||
|
|
|
@ -15,11 +15,6 @@ include ../../build/common.mk
|
|||
|
||||
export PATH:=$(shell yarn bin 2>/dev/null):$(PATH)
|
||||
|
||||
ensure::
|
||||
[ -d "./prebuilt/" ] || mkdir "./prebuilt"
|
||||
[ -e "./prebuilt/nativeruntime.node" ] || aws s3 cp "s3://eng.pulumi.com/nativeruntime/$$(go env GOOS)/nativeruntime.node" "./prebuilt/"
|
||||
[ -e "./prebuilt/nativeruntime-v0.11.0.node" ] || aws s3 cp "s3://eng.pulumi.com/nativeruntime/$$(go env GOOS)/nativeruntime-v0.11.0.node" "./prebuilt/"
|
||||
|
||||
lint::
|
||||
$(GOMETALINTER) cmd/pulumi-language-nodejs/main.go | sort ; exit "$${PIPESTATUS[0]}"
|
||||
tslint -c tslint.json -p tsconfig.json
|
||||
|
@ -39,7 +34,6 @@ install::
|
|||
GOBIN=$(PULUMI_BIN) go install -ldflags "-X github.com/pulumi/pulumi/pkg/version.Version=${VERSION}" ${LANGUAGE_HOST}
|
||||
cp dist/pulumi-resource-pulumi-nodejs "$(PULUMI_BIN)"
|
||||
mkdir -p "$(PULUMI_BIN)/v6.10.2"
|
||||
cp ./prebuilt/*.node "$(PULUMI_BIN)/v6.10.2/"
|
||||
rm -rf "$(PULUMI_NODE_MODULES)/$(NODE_MODULE_NAME)/tests"
|
||||
|
||||
test_fast::
|
||||
|
|
Loading…
Reference in a new issue