diff --git a/.github/workflows/common.yml b/.github/workflows/common.yml index 633a9114..f4725569 100644 --- a/.github/workflows/common.yml +++ b/.github/workflows/common.yml @@ -25,7 +25,7 @@ jobs: run: | /usr/bin/swift package update containerization env: - CONTAINERIZATION_REPO: https://${{ secrets.REPO_READ }}@github.com/apple-uat/containerization.git + CONTAINERIZATION_REPO: https://${{ secrets.REPO_READ }}@github.com/apple/containerization.git - name: Check formatting run: | ./scripts/install-hawkeye.sh @@ -33,14 +33,14 @@ jobs: if ! git diff -- . ':(exclude)Package.swift' ':(exclude)Package.resolved'; then echo the following files require formatting or license headers: ; git diff --name-only ; false ; fi - name: Check protobuf run: | - make BUILDER_SHIM_REPO=https://${{ secrets.REPO_READ }}@github.com/apple-uat/container-builder-shim.git protos + make BUILDER_SHIM_REPO=https://${{ secrets.REPO_READ }}@github.com/apple/container-builder-shim.git protos # TODO [launch]: TEMPORARILY we need to exclude these files since we had to modify them to add # the github token for pulling the private repos. if ! git diff -- . ':(exclude)Package.swift' ':(exclude)Package.resolved' ':(exclude)Protobuf.Makefile'; then echo the following files require formatting or license headers: ; git diff --name-only ; false ; fi env: CURRENT_SDK: y - CONTAINERIZATION_REPO: https://${{ secrets.REPO_READ }}@github.com/apple-uat/containerization.git + CONTAINERIZATION_REPO: https://${{ secrets.REPO_READ }}@github.com/apple/containerization.git - name: Set build configuration run: | echo "BUILD_CONFIGURATION=debug" >> $GITHUB_ENV @@ -53,7 +53,7 @@ jobs: env: DEVELOPER_DIR: "/Applications/Xcode_16.3.app/Contents/Developer" CURRENT_SDK: y - CONTAINERIZATION_REPO: https://${{ secrets.REPO_READ }}@github.com/apple-uat/containerization.git + CONTAINERIZATION_REPO: https://${{ secrets.REPO_READ }}@github.com/apple/containerization.git - name: Create package run: | mkdir -p outputs @@ -69,7 +69,7 @@ jobs: CONTAINER_REGISTRY_HOST: ghcr.io DEVELOPER_DIR: "/Applications/Xcode_16.3.app/Contents/Developer" CURRENT_SDK: y - CONTAINERIZATION_REPO: https://${{ secrets.REPO_READ }}@github.com/apple-uat/containerization.git + CONTAINERIZATION_REPO: https://${{ secrets.REPO_READ }}@github.com/apple/containerization.git - name: Save artifacts uses: actions/upload-artifact@v4 with: diff --git a/Package.swift b/Package.swift index b0a80c09..37fcbc6d 100644 --- a/Package.swift +++ b/Package.swift @@ -26,11 +26,11 @@ if let path = ProcessInfo.processInfo.environment["CONTAINERIZATION_PATH"] { scDependency = .package(path: path) scVersion = "latest" } else { - scVersion = "0.1.34" + scVersion = "0.0.2" if let containerizationRepo = ProcessInfo.processInfo.environment["CONTAINERIZATION_REPO"], containerizationRepo != "" { scDependency = .package(url: containerizationRepo, exact: Version(stringLiteral: scVersion)) } else { - scDependency = .package(url: "https://github.com/apple-uat/containerization.git", exact: Version(stringLiteral: scVersion)) + scDependency = .package(url: "https://github.com/apple/containerization.git", exact: Version(stringLiteral: scVersion)) } } diff --git a/Protobuf.Makefile b/Protobuf.Makefile index 3472dddd..badf6a31 100644 --- a/Protobuf.Makefile +++ b/Protobuf.Makefile @@ -16,7 +16,7 @@ ROOT_DIR := $(shell git rev-parse --show-toplevel) LOCAL_DIR := $(ROOT_DIR)/.local LOCALBIN := $(LOCAL_DIR)/bin -BUILDER_SHIM_REPO ?= https://github.com/apple-uat/container-builder-shim.git +BUILDER_SHIM_REPO ?= https://github.com/apple/container-builder-shim.git ## Versions PROTOC_VERSION=26.1 diff --git a/README.md b/README.md index dd1bacad..4494cfa7 100644 --- a/README.md +++ b/README.md @@ -23,11 +23,11 @@ To build the Containerization package, your system needs either: `container` is designed to take advantage of the features of the macOS 16 Developer Preview. You can run the application on macOS Sequoia, but the `container` maintainers typically will not address Sequoia issues that cannot be reproduced on the macOS 16 Developer Beta. -There are [significant networking limitations](https://github.com/apple-uat/container#macos-sequoia-limitations) that impact the usability `container` on macOS Sequoia. +There are [significant networking limitations](https://github.com/apple/container#macos-sequoia-limitations) that impact the usability `container` on macOS Sequoia. ### Install and run -Download the latest application installer package from the [Github release page](https://github.com/apple-uat/container/releases). +Download the latest application installer package from the [Github release page](https://github.com/apple/container/releases). To install the application, double click the installer package and follow the instructions. Enter your administrator password when prompted to give the installer permission to place the application under `/usr/local`. @@ -72,7 +72,7 @@ Missing required runtime dependencies: 2. Kernel Would like to install them now? [Y/n]: Y Installing default kernel from [https://github.com/kata-containers/kata-containers/releases/download/3.17.0/kata-static-3.17.0-arm64.tar.xz]... -Installing initial filesystem from [ghcr.io/apple-uat/containerization/vminit:0.1.34]... +Installing initial filesystem from [ghcr.io/apple/containerization/vminit:0.1.34]... % ``` @@ -167,7 +167,7 @@ cd web-test Download an image file for your web server can use (TODO: substitute the container logo): ```bash -curl -L -o logo.jpg https://github.com/apple-uat/container/tree/main/docs/assets/logo.jpg +curl -L -o logo.jpg https://github.com/apple/container/tree/main/docs/assets/logo.jpg ``` In the `web-test` directory, create a file named `Dockerfile` with this content: @@ -231,7 +231,7 @@ When you list containers now, `my-web-server` is present, along with the contain ```shellsession % container ls ID IMAGE OS ARCH STATE ADDR -buildkit ghcr.io/apple-uat/container-builder-shim/builder:2.1.1 linux arm64 running 192.168.64.2 +buildkit ghcr.io/apple/container-builder-shim/builder:2.1.1 linux arm64 running 192.168.64.2 my-web-server web-test:latest linux arm64 running 192.168.64.3 % ``` @@ -343,7 +343,7 @@ If you list all running and stopped containers, you will see that the `--rm` fla ```bash % container ls --all ID IMAGE OS ARCH STATE ADDR -buildkit ghcr.io/apple-uat/container-builder-shim/builder:2.1.1 linux arm64 running 192.168.64.2 +buildkit ghcr.io/apple/container-builder-shim/builder:2.1.1 linux arm64 running 192.168.64.2 % ``` diff --git a/Sources/ContainerClient/Core/ClientDefaults.swift b/Sources/ContainerClient/Core/ClientDefaults.swift index 9bba90ba..f0e49479 100644 --- a/Sources/ContainerClient/Core/ClientDefaults.swift +++ b/Sources/ContainerClient/Core/ClientDefaults.swift @@ -63,7 +63,7 @@ extension ClientDefaults.Keys { case .defaultKernelBinaryPath: return "opt/kata/share/kata-containers/vmlinux-6.12.28-153" case .defaultBuilderImage: - return "ghcr.io/apple-uat/container-builder-shim/builder:2.1.3" + return "ghcr.io/apple/container-builder-shim/builder:0.0.3" case .defaultDNSDomain: return "test" case .defaultRegistryDomain: @@ -73,7 +73,7 @@ extension ClientDefaults.Keys { guard tag != "latest" else { return "vminit:latest" } - return "ghcr.io/apple-uat/containerization/vminit:\(tag)" + return "ghcr.io/apple/containerization/vminit:\(tag)" } } } diff --git a/Tests/CLITests/Subcommands/Build/CLIBuilderTest.swift b/Tests/CLITests/Subcommands/Build/CLIBuilderTest.swift index 279b88d3..a37cdc4d 100644 --- a/Tests/CLITests/Subcommands/Build/CLIBuilderTest.swift +++ b/Tests/CLITests/Subcommands/Build/CLIBuilderTest.swift @@ -95,7 +95,7 @@ extension TestCLIBuildBase { let tempDir: URL = try createTempDir() let dockerfile: String = """ - FROM ghcr.io/apple-uat/test-images/alpine:3.21 + FROM ghcr.io/linuxcontainers/alpine:3.20 ADD . . @@ -108,7 +108,7 @@ extension TestCLIBuildBase { .file("emptyFile", content: .zeroFilled(size: 1)), ] try createContext(tempDir: tempDir, dockerfile: dockerfile, context: context) - let imageName = "regitry.local/add-all:\(UUID().uuidString)" + let imageName: String = "regitry.local/add-all:\(UUID().uuidString)" try self.build(tag: imageName, tempDir: tempDir) #expect(try self.inspectImage(imageName) == imageName, "expected to have successfully built \(imageName)") } @@ -117,7 +117,7 @@ extension TestCLIBuildBase { let tempDir: URL = try createTempDir() let dockerfile: String = """ - FROM ghcr.io/apple-uat/test-images/alpine:3.21 + FROM ghcr.io/linuxcontainers/alpine:3.20 ARG ADDRESS RUN nc -zv ${ADDRESS%:*} ${ADDRESS##*:} || exit 1 """ @@ -138,84 +138,84 @@ extension TestCLIBuildBase { let dockerfile = """ # stage 1 Meta ARG - ARG TAG=3.21 - FROM ghcr.io/apple-uat/test-images/alpine:${TAG} + ARG TAG=3.20 + FROM ghcr.io/linuxcontainers/alpine:${TAG} # stage 2 RUN - FROM ghcr.io/apple-uat/test-images/alpine:3.21 + FROM ghcr.io/linuxcontainers/alpine:3.20 RUN echo "Hello, World!" > /hello.txt # stage 3 - RUN [] - FROM ghcr.io/apple-uat/test-images/alpine:3.21 + FROM ghcr.io/linuxcontainers/alpine:3.20 RUN ["sh", "-c", "echo 'Exec form' > /exec.txt"] # stage 4 - CMD - FROM ghcr.io/apple-uat/test-images/alpine:3.21 + FROM ghcr.io/linuxcontainers/alpine:3.20 CMD ["echo", "Exec default"] # stage 5 - CMD [] - FROM ghcr.io/apple-uat/test-images/alpine:3.21 + FROM ghcr.io/linuxcontainers/alpine:3.20 CMD ["echo", "Exec'ing"] #stage 6 - LABEL - FROM ghcr.io/apple-uat/test-images/alpine:3.21 + FROM ghcr.io/linuxcontainers/alpine:3.20 LABEL version="1.0" description="Test image" # stage 7 - EXPOSE - FROM ghcr.io/apple-uat/test-images/alpine:3.21 + FROM ghcr.io/linuxcontainers/alpine:3.20 EXPOSE 8080 # stage 8 - ENV - FROM ghcr.io/apple-uat/test-images/alpine:3.21 + FROM ghcr.io/linuxcontainers/alpine:3.20 ENV MY_ENV=hello RUN echo $MY_ENV > /env.txt # stage 9 - ADD - FROM ghcr.io/apple-uat/test-images/alpine:3.21 + FROM ghcr.io/linuxcontainers/alpine:3.20 ADD emptyFile / # stage 10 - COPY - FROM ghcr.io/apple-uat/test-images/alpine:3.21 + FROM ghcr.io/linuxcontainers/alpine:3.20 COPY toCopy /toCopy # stage 11 - ENTRYPOINT - FROM ghcr.io/apple-uat/test-images/alpine:3.21 + FROM ghcr.io/linuxcontainers/alpine:3.20 ENTRYPOINT ["echo", "entrypoint!"] # stage 12 - VOLUME - FROM ghcr.io/apple-uat/test-images/alpine:3.21 + FROM ghcr.io/linuxcontainers/alpine:3.20 VOLUME /data # stage 13 - USER - FROM ghcr.io/apple-uat/test-images/alpine:3.21 + FROM ghcr.io/linuxcontainers/alpine:3.20 RUN adduser -D myuser USER myuser CMD whoami # stage 14 - WORKDIR - FROM ghcr.io/apple-uat/test-images/alpine:3.21 + FROM ghcr.io/linuxcontainers/alpine:3.20 WORKDIR /app RUN pwd > /pwd.out # stage 15 - ARG - FROM ghcr.io/apple-uat/test-images/alpine:3.21 + FROM ghcr.io/linuxcontainers/alpine:3.20 ARG MY_VAR=default RUN echo $MY_VAR > /var.out # stage 16 - ONBUILD - # FROM ghcr.io/apple-uat/test-images/alpine:3.21 + # FROM ghcr.io/linuxcontainers/alpine:3.20 # ONBUILD RUN echo "onbuild triggered" > /onbuild.out # stage 17 - STOPSIGNAL - # FROM ghcr.io/apple-uat/test-images/alpine:3.21 + # FROM ghcr.io/linuxcontainers/alpine:3.20 # STOPSIGNAL SIGTERM # stage 18 - HEALTHCHECK - # FROM ghcr.io/apple-uat/test-images/alpine:3.21 + # FROM ghcr.io/linuxcontainers/alpine:3.20 # HEALTHCHECK CMD echo "healthy" || exit 1 # stage 19 - SHELL - # FROM ghcr.io/apple-uat/test-images/alpine:3.21 + # FROM ghcr.io/linuxcontainers/alpine:3.20 # SHELL ["/bin/sh", "-c"] # RUN echo $0 > /shell.txt """ @@ -236,7 +236,7 @@ extension TestCLIBuildBase { let dockerfile: String = """ # Test 1: Test basic symlinking - FROM ghcr.io/apple-uat/test-images/alpine:3.21 + FROM ghcr.io/linuxcontainers/alpine:3.20 ADD Test1Source Test1Source ADD Test1Source2 Test1Source2 @@ -244,7 +244,7 @@ extension TestCLIBuildBase { RUN cat Test1Source2/test.yaml # Test2: Test symlinks in nested directories - FROM ghcr.io/apple-uat/test-images/alpine:3.21 + FROM ghcr.io/linuxcontainers/alpine:3.20 ADD Test2Source Test2Source ADD Test2Source2 Test2Source2 @@ -252,7 +252,7 @@ extension TestCLIBuildBase { RUN cat Test2Source2/Test/test.txt # Test 3: Test symlinks to directories work - FROM ghcr.io/apple-uat/test-images/alpine:3.21 + FROM ghcr.io/linuxcontainers/alpine:3.20 ADD Test3Source Test3Source ADD Test3Source2 Test3Source2 @@ -293,7 +293,7 @@ extension TestCLIBuildBase { let tempDir: URL = try createTempDir() let dockerfile: String = """ - FROM ghcr.io/apple-uat/test-images/alpine:3.21 + FROM ghcr.io/linuxcontainers/alpine:3.20 RUN echo "foobar" > /file """ let context: [FileSystemEntry] = [] @@ -318,7 +318,7 @@ extension TestCLIBuildBase { let dockerfileCtxDir: URL = try createTempDir() let dockerfile: String = """ - FROM ghcr.io/apple-uat/test-images/alpine:3.21 + FROM ghcr.io/linuxcontainers/alpine:3.20 RUN ls ./ COPY . /root diff --git a/Tests/CLITests/Subcommands/Build/TestCLITermIO.swift b/Tests/CLITests/Subcommands/Build/TestCLITermIO.swift index f48a5f2a..26bc68d0 100644 --- a/Tests/CLITests/Subcommands/Build/TestCLITermIO.swift +++ b/Tests/CLITests/Subcommands/Build/TestCLITermIO.swift @@ -24,7 +24,7 @@ extension TestCLIRunBase { // This test class is NOT thread safe class TestCLITermIO: TestCLIRunBase, @unchecked Sendable { override var ContainerImage: String { - "ghcr.io/apple-uat/test-images/alpine:3.21" + "ghcr.io/linuxcontainers/alpine:3.20" } override var Interactive: Bool { diff --git a/Tests/CLITests/Subcommands/Images/TestCLIImages.swift b/Tests/CLITests/Subcommands/Images/TestCLIImages.swift index 0b4893f8..20da9424 100644 --- a/Tests/CLITests/Subcommands/Images/TestCLIImages.swift +++ b/Tests/CLITests/Subcommands/Images/TestCLIImages.swift @@ -211,7 +211,7 @@ extension TestCLIImagesCommand { @Test func testImageDefaultRegistry() throws { do { let defaultDomain = "ghcr.io" - let imageName = "apple-uat/test-images/alpine:3.21" + let imageName = "ghcr.io/linuxcontainers/alpine:3.20" defer { try? doDefaultRegistrySet(domain: "docker.io") } diff --git a/Tests/CLITests/Utilities/CLITest.swift b/Tests/CLITests/Utilities/CLITest.swift index e69d1840..950df6e3 100644 --- a/Tests/CLITests/Utilities/CLITest.swift +++ b/Tests/CLITests/Utilities/CLITest.swift @@ -35,8 +35,8 @@ class CLITest { return tempDir } - let alpine = "ghcr.io/apple-uat/test-images/alpine:3.21" - let busybox = "ghcr.io/apple-uat/test-images/busybox:1.37" + let alpine = "ghcr.io/linuxcontainers/alpine:3.20" + let busybox = "ghcr.io/containerd/busybox:1.36" let defaultContainerArgs = ["sleep", "infinity"] diff --git a/docs/localSwiftContainerization.md b/docs/localSwiftContainerization.md index 6b50413b..342c6d77 100644 --- a/docs/localSwiftContainerization.md +++ b/docs/localSwiftContainerization.md @@ -1,10 +1,10 @@ # Develop using a local copy of Containerization -This page describes how to build and run container using a local copy of [`Containerization`](https://github.com/apple-uat/containerization). +This page describes how to build and run container using a local copy of [`Containerization`](https://github.com/apple/containerization). ## Use the local copy of containerization -1. Clone the [Containerization](https://github.com/apple-uat/containerization) repository such that it sits next to your clone of the `container` repository. +1. Clone the [Containerization](https://github.com/apple/containerization) repository such that it sits next to your clone of the `container` repository. 2. In your development shell, go to the `container` project directory.