Unverified Commit f4a053be authored by John DiSanti's avatar John DiSanti Committed by GitHub
Browse files

Add release metadata to `versions.toml` (#1400)

parent 35989d2f
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -59,7 +59,7 @@ fun generateSmithyBuild(tests: List<CodegenTest>): String {
task("generateSmithyBuild") {
    description = "generate smithy-build.json"
    doFirst {
        projectDir.resolve("smithy-build.json").writeText(generateSmithyBuild(CodegenTests))
        buildDir.resolve("smithy-build.json").writeText(generateSmithyBuild(CodegenTests))
    }
}

+29 −17
Original line number Diff line number Diff line
@@ -18,6 +18,10 @@ plugins {
    id("software.amazon.smithy").version("0.6.0")
}

configure<software.amazon.smithy.gradle.SmithyExtension> {
    smithyBuildConfigs = files(buildDir.resolve("smithy-build.json"))
}

val smithyVersion: String by project
val defaultRustFlags: String by project
val defaultRustDocFlags: String by project
@@ -51,17 +55,18 @@ dependencies {
val awsServices: AwsServices by lazy { discoverServices(loadServiceMembership()) }
val eventStreamAllowList: Set<String> by lazy { eventStreamAllowList() }

fun getSdkVersion(): String = properties.get("aws.sdk.version") ?: throw kotlin.Exception("SDK version missing")
fun getSmithyRsVersion(): String = properties.get("smithy.rs.runtime.crate.version") ?: throw kotlin.Exception("smithy-rs version missing")
fun getRustMSRV(): String = properties.get("rust.msrv") ?: throw kotlin.Exception("Rust MSRV missing")
fun getSdkVersion(): String = properties.get("aws.sdk.version") ?: throw Exception("SDK version missing")
fun getSmithyRsVersion(): String = properties.get("smithy.rs.runtime.crate.version") ?: throw Exception("smithy-rs version missing")
fun getRustMSRV(): String = properties.get("rust.msrv") ?: throw Exception("Rust MSRV missing")
fun getPreviousReleaseVersionManifestPath(): String? = properties.get("aws.sdk.previous.release.versions.manifest")

fun loadServiceMembership(): Membership {
    val membershipOverride = properties.get("aws.services")?.let { parseMembership(it) }
    println(membershipOverride)
    val fullSdk =
        parseMembership(properties.get("aws.services.fullsdk") ?: throw kotlin.Exception("full sdk list missing"))
        parseMembership(properties.get("aws.services.fullsdk") ?: throw Exception("full sdk list missing"))
    val tier1 =
        parseMembership(properties.get("aws.services.smoketest") ?: throw kotlin.Exception("smoketest list missing"))
        parseMembership(properties.get("aws.services.smoketest") ?: throw Exception("smoketest list missing"))
    return membershipOverride ?: if ((properties.get("aws.fullsdk") ?: "") == "true") {
        fullSdk
    } else {
@@ -131,11 +136,12 @@ tasks.register("generateSmithyBuild") {
    inputs.property("servicelist", awsServices.services.toString())
    inputs.property("eventStreamAllowList", eventStreamAllowList)
    inputs.dir(projectDir.resolve("aws-models"))
    outputs.file(projectDir.resolve("smithy-build.json"))
    outputs.file(buildDir.resolve("smithy-build.json"))

    doFirst {
        projectDir.resolve("smithy-build.json").writeText(generateSmithyBuild(awsServices))
        buildDir.resolve("smithy-build.json").writeText(generateSmithyBuild(awsServices))
    }
    outputs.upToDateWhen { false }
}

tasks.register("generateIndexMd") {
@@ -335,15 +341,22 @@ tasks.register<ExecRustBuildTool>("generateVersionManifest") {

    toolPath = publisherToolPath
    binaryName = "publisher"
    arguments = listOf(
    arguments = mutableListOf(
        "generate-version-manifest",
        "--location",
        outputDir.absolutePath,
        "--smithy-build",
        outputDir.resolve("../../smithy-build.json").normalize().absolutePath,
        buildDir.resolve("smithy-build.json").normalize().absolutePath,
        "--examples-revision",
        properties.get("aws.sdk.examples.revision") ?: "missing"
    )
    ).apply {
        val previousReleaseManifestPath = getPreviousReleaseVersionManifestPath()?.let { manifestPath ->
            add("--previous-release-versions")
            add(manifestPath)
            add("--release-tag")
            add("v" + getSdkVersion())
        }
    }
}

tasks.register("finalizeSdk") {
@@ -362,13 +375,8 @@ tasks.register("finalizeSdk") {
    )
}

tasks.register<Delete>("deleteSdk") {
    delete = setOf(outputDir)
}
tasks["clean"].dependsOn("deleteSdk")

tasks["smithyBuildJar"].apply {
    inputs.file(projectDir.resolve("smithy-build.json"))
    inputs.file(buildDir.resolve("smithy-build.json"))
    inputs.dir(projectDir.resolve("aws-models"))
    dependsOn("generateSmithyBuild")
    dependsOn("generateCargoWorkspace")
@@ -410,6 +418,10 @@ tasks.register<Exec>("cargoClippy") {

tasks["test"].finalizedBy("cargoClippy", "cargoTest", "cargoDocs")

tasks.register<Delete>("deleteSdk") {
    delete = setOf(outputDir)
}
tasks["clean"].dependsOn("deleteSdk")
tasks["clean"].doFirst {
    delete("smithy-build.json")
    delete(buildDir.resolve("smithy-build.json"))
}
+5 −1
Original line number Diff line number Diff line
@@ -17,5 +17,9 @@ if [[ $# -lt 1 ]]; then
    exit 1
fi

ACTION_NAME=$1
shift
ACTION_ARGS=("$@")

cd ..
make -f ./smithy-rs/ci.mk "$@"
make -f ./smithy-rs/ci.mk "${ACTION_NAME}" ARGS="${ACTION_ARGS[*]}"
+21 −20
Original line number Diff line number Diff line
@@ -8,6 +8,7 @@
# with dependencies between targets included so that it's not necessary
# to remember to generate a SDK for the targets that require one.

ARGS=
CI_BUILD=./smithy-rs/tools/ci-build
CI_ACTION=$(CI_BUILD)/ci-action

@@ -17,80 +18,80 @@ acquire-build-image:

.PHONY: check-aws-sdk-examples
check-aws-sdk-examples: generate-aws-sdk
	$(CI_ACTION) $@
	$(CI_ACTION) $@ $(ARGS)

.PHONY: check-aws-sdk-services
check-aws-sdk-services: generate-aws-sdk
	$(CI_ACTION) $@
	$(CI_ACTION) $@ $(ARGS)

.PHONY: check-aws-sdk-smoketest-additional-checks
check-aws-sdk-smoketest-additional-checks: generate-aws-sdk-smoketest
	$(CI_ACTION) $@
	$(CI_ACTION) $@ $(ARGS)

.PHONY: check-aws-sdk-smoketest-docs-clippy-udeps
check-aws-sdk-smoketest-docs-clippy-udeps: generate-aws-sdk-smoketest
	$(CI_ACTION) $@
	$(CI_ACTION) $@ $(ARGS)

.PHONY: check-aws-sdk-smoketest-unit-tests
check-aws-sdk-smoketest-unit-tests: generate-aws-sdk-smoketest
	$(CI_ACTION) $@
	$(CI_ACTION) $@ $(ARGS)

.PHONY: check-client-codegen-integration-tests
check-client-codegen-integration-tests:
	$(CI_ACTION) $@
	$(CI_ACTION) $@ $(ARGS)

.PHONY: check-client-codegen-unit-tests
check-client-codegen-unit-tests:
	$(CI_ACTION) $@
	$(CI_ACTION) $@ $(ARGS)

.PHONY: check-rust-runtimes-and-tools
check-rust-runtimes-and-tools: generate-aws-sdk-smoketest
	$(CI_ACTION) $@
	$(CI_ACTION) $@ $(ARGS)

.PHONY: check-sdk-codegen-unit-tests
check-sdk-codegen-unit-tests:
	$(CI_ACTION) $@
	$(CI_ACTION) $@ $(ARGS)

.PHONY: check-server-codegen-integration-tests
check-server-codegen-integration-tests:
	$(CI_ACTION) $@
	$(CI_ACTION) $@ $(ARGS)

.PHONY: check-server-codegen-unit-tests
check-server-codegen-unit-tests:
	$(CI_ACTION) $@
	$(CI_ACTION) $@ $(ARGS)

.PHONY: check-server-codegen-integration-tests-python
check-server-codegen-integration-tests-python:
	$(CI_ACTION) $@
	$(CI_ACTION) $@ $(ARGS)

.PHONY: check-server-codegen-unit-tests-python
check-server-codegen-unit-tests-python:
	$(CI_ACTION) $@
	$(CI_ACTION) $@ $(ARGS)

.PHONY: check-server-e2e-test
check-server-e2e-test:
	$(CI_ACTION) $@
	$(CI_ACTION) $@ $(ARGS)

.PHONY: check-style-and-lints
check-style-and-lints:
	$(CI_ACTION) $@
	$(CI_ACTION) $@ $(ARGS)

.PHONY: generate-aws-sdk-smoketest
generate-aws-sdk-smoketest:
	$(CI_ACTION) $@
	$(CI_ACTION) $@ $(ARGS)

.PHONY: generate-aws-sdk
generate-aws-sdk:
	$(CI_ACTION) $@
	$(CI_ACTION) $@ $(ARGS)

.PHONY: generate-codegen-diff
generate-codegen-diff:
	$(CI_ACTION) $@
	$(CI_ACTION) $@ $(ARGS)

.PHONY: generate-smithy-rs-runtime-bundle
generate-smithy-rs-runtime-bundle:
	$(CI_ACTION) $@
	$(CI_ACTION) $@ $(ARGS)

.PHONY: sanity-test
sanity-test:
	$(CI_ACTION) $@
	$(CI_ACTION) $@ $(ARGS)
+2 −0
Original line number Diff line number Diff line
@@ -438,6 +438,7 @@ dependencies = [
 "anyhow",
 "async-trait",
 "serde",
 "toml",
 "tracing",
]

@@ -504,6 +505,7 @@ version = "0.5.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8d82e1a7758622a465f8cee077614c73484dac5b836c02ff6a40d5d1010324d7"
dependencies = [
 "indexmap",
 "serde",
]

Loading