diff --git a/RELEASING.md b/RELEASING.md index 7794b385..5f5e6348 100644 --- a/RELEASING.md +++ b/RELEASING.md @@ -1,13 +1,29 @@ -# Releasing swiftly +# Releasing + +Swiftly and the swiftly-install release script have different release schedules and their version numbers do not correspond. Below is instructions for releasing each. + +## Releasing swiftly 1. Check out the commit you wish to create a release for. Ensure no other local modifications or changes are present. -1. Ensure the version string in `Swiftly.swift` is accurate. If it is not, push another commit updating it to the proper value. +2. Ensure the version string in `SwiftlyCore/SwiftlyCore.swift` is accurate. If it is not, push another commit updating it to the proper value. + +3. Create a tag on that commit with the format "x.y.z". Do not omit "z", even if its value is 0. + +4. Build the executables for the release by running ./scripts/build_release.sh from the root of the swiftly repository (do this once on an x86_64 machine and once on an aarch64 one) + +5. Push the tag to `origin`. `git push origin ` + +6. Go to the GitHub page for the new tag, click edit tag, add an appropriate description, attach the prebuilt executables, and click "Publish Release". + +## Releasing swiftly-install + +1. Check out the commit you wish to create a release for. Ensure no other local modifications or changes are present. -1. Create a tag on that commit with the format "x.y.z". Do not omit "z", even if its value is 0. +2. Ensure the version string `SWIFTLY_INSTALL_VERSION` in `install/swiftly-install.sh` is accurate. If it is not, push another commit updating it to the proper value. -1. Build the executables for the release by running ./scripts/build_release.sh from the root of the swiftly repository (do this once on an x86_64 machine and once on an aarch64 one) +3. Create a tag on that commit with the format "swiftly-install-x.y.z". Do not omit "z", even if its value is 0. -1. Push the tag to `origin`. +4. Push the tag to `origin`. `git push origin ` -1. Go to the GitHub page for the new tag, click edit tag, add an appropriate description, attach the prebuilt executables, and click "Publish Release". +5. Copy `install/swiftly-install.sh` to website branch of repository diff --git a/Sources/SwiftlyCore/SwiftlyCore.swift b/Sources/SwiftlyCore/SwiftlyCore.swift index be0925db..a038c1f4 100644 --- a/Sources/SwiftlyCore/SwiftlyCore.swift +++ b/Sources/SwiftlyCore/SwiftlyCore.swift @@ -1,6 +1,6 @@ import Foundation -public let version = SwiftlyVersion(major: 0, minor: 2, patch: 0) +public let version = SwiftlyVersion(major: 0, minor: 3, patch: 0) /// A separate home directory to use for testing purposes. This overrides swiftly's default /// home directory location logic. diff --git a/docker/docker-compose.1804.yaml b/docker/docker-compose.1804.yaml index 8d034595..da34363d 100644 --- a/docker/docker-compose.1804.yaml +++ b/docker/docker-compose.1804.yaml @@ -6,7 +6,7 @@ services: image: swiftly:18.04-test build: args: - base_image: "swift:5.8-bionic" + base_image: "swift:5.10-bionic" test: image: swiftly:18.04-test diff --git a/docker/docker-compose.2004.yaml b/docker/docker-compose.2004.yaml index 988c4b19..a4799ace 100644 --- a/docker/docker-compose.2004.yaml +++ b/docker/docker-compose.2004.yaml @@ -6,7 +6,7 @@ services: image: swiftly:20.04-test build: args: - base_image: "swift:5.8-focal" + base_image: "swift:5.10-focal" test: image: swiftly:20.04-test diff --git a/docker/docker-compose.2204.yaml b/docker/docker-compose.2204.yaml index 98d055b3..824721cd 100644 --- a/docker/docker-compose.2204.yaml +++ b/docker/docker-compose.2204.yaml @@ -6,7 +6,7 @@ services: image: swiftly:22.04-test build: args: - base_image: "swift:5.8-jammy" + base_image: "swift:5.10-jammy" test: image: swiftly:22.04-test diff --git a/docker/docker-compose.amazonlinux2.yaml b/docker/docker-compose.amazonlinux2.yaml index a7873bf7..4874d2af 100644 --- a/docker/docker-compose.amazonlinux2.yaml +++ b/docker/docker-compose.amazonlinux2.yaml @@ -8,7 +8,7 @@ services: context: .. dockerfile: docker/test-amazonlinux2.dockerfile args: - base_image: "swift:5.8-amazonlinux2" + base_image: "swift:5.10-amazonlinux2" test: image: swiftly:amazonlinux2-test diff --git a/docker/docker-compose.ubi9.yaml b/docker/docker-compose.ubi9.yaml index a213936a..36c85c5d 100644 --- a/docker/docker-compose.ubi9.yaml +++ b/docker/docker-compose.ubi9.yaml @@ -8,7 +8,7 @@ services: context: .. dockerfile: docker/test-ubi9.dockerfile args: - base_image: "swift:5.8-rhel-ubi9" + base_image: "swift:5.10-rhel-ubi9" test: image: swiftly:ubi9-test diff --git a/docker/test-amazonlinux2.dockerfile b/docker/test-amazonlinux2.dockerfile index 84fbe6b1..0fc0ca9d 100644 --- a/docker/test-amazonlinux2.dockerfile +++ b/docker/test-amazonlinux2.dockerfile @@ -1,4 +1,4 @@ -ARG base_image=swift:5.8-amazonlinux2 +ARG base_image=swift:5.10-amazonlinux2 FROM $base_image # needed to do again after FROM due to docker limitation ARG swift_version diff --git a/docker/test-ubi9.dockerfile b/docker/test-ubi9.dockerfile index 7f152350..46bed02f 100644 --- a/docker/test-ubi9.dockerfile +++ b/docker/test-ubi9.dockerfile @@ -1,4 +1,4 @@ -ARG base_image=swift:5.8-rhel-ubi9 +ARG base_image=swift:5.10-rhel-ubi9 FROM $base_image # needed to do again after FROM due to docker limitation ARG swift_version diff --git a/docker/test.dockerfile b/docker/test.dockerfile index eb00778e..c28571bd 100644 --- a/docker/test.dockerfile +++ b/docker/test.dockerfile @@ -1,4 +1,4 @@ -ARG swift_version=5.8 +ARG swift_version=5.10 ARG ubuntu_version=jammy ARG base_image=swift:$swift_version-$ubuntu_version FROM $base_image diff --git a/install/swiftly-install.sh b/install/swiftly-install.sh index 4dff0466..4faf694e 100755 --- a/install/swiftly-install.sh +++ b/install/swiftly-install.sh @@ -320,7 +320,7 @@ verify_getopt_install () { return "$?" } -SWIFTLY_INSTALL_VERSION="0.3.0" +SWIFTLY_INSTALL_VERSION="0.4.0" MODIFY_PROFILE="true" SWIFTLY_INSTALL_SYSTEM_DEPS="true" diff --git a/scripts/build.dockerfile b/scripts/build.dockerfile index d347b69e..58bb7e6e 100644 --- a/scripts/build.dockerfile +++ b/scripts/build.dockerfile @@ -1,7 +1,7 @@ # Dockerfile used to build a statically-linked swiftly executable for generic GNU/Linux platforms. # See RELEASING.md for information on how to use this file. -FROM swift:5.8.1-amazonlinux2 +FROM swift:5.10-amazonlinux2 # swiftly build depdenencies RUN yum install -y \ diff --git a/scripts/build_release.sh b/scripts/build_release.sh index 5cd44458..fa6e283e 100755 --- a/scripts/build_release.sh +++ b/scripts/build_release.sh @@ -5,11 +5,11 @@ set -o errexit version="$1" if [[ -z "$version" ]]; then - echo "Usage: build.sh " + echo "Usage: build_release.sh " exit 1 fi -raw_arch="$(uname --machine)" +raw_arch="$(uname -m)" case "$raw_arch" in "x86_64") arch="x86_64" @@ -20,7 +20,7 @@ case "$raw_arch" in ;; *) - echo "Error: Unsupported CPU architecture: $RAW_ARCH" + echo "Error: Unsupported CPU architecture: $raw_arch" ;; esac