diff --git a/anka/README.md b/Anka.md similarity index 50% rename from anka/README.md rename to Anka.md index 2aca24b..2875655 100644 --- a/anka/README.md +++ b/Anka.md @@ -1,26 +1,13 @@ -# osx-images - -Packer templates to build [macOS Anka images](https://veertu.com/anka-technology/) to use in CI: - - * `catalina-base` image has only `brew` pre-installed - * `catalina-xcode-12.2` image is based of `catalina-base` and has `Xcode 12.2` with [`Flutter`](https://flutter.dev/) pre-installed - * `big-sur-base` image has only `brew` pre-installed - * `big-sur-xcode-12.3` image is based of `big-sur-base` and has `Xcode 12.3` with [`Flutter`](https://flutter.dev/) pre-installed - ## Building Base Image -First, convert a macOS installation in Anka format: - -```bash -anka create --ram-size 8G --cpu-count 2 --disk-size 80G --app /Applications/Install\ macOS\ Big\ Sur.app big-sur-vanilla -``` +First, download macOS from App Store to have a `*.app` installation in `/Applications` folder. Then run `./scripts/install-anka-builder.sh` to install Anka builder for Packer. To build the base image (you need to have `/Applications/Install macOS Big Sur.app/` installed from App Store): ```bash -packer build templates/big-sur-base.json +packer build -only=anka templates/big-sur-base.json ``` We also need to add a port forwarding rule so VMs based of `catalina-base` image can be SSHable: @@ -35,7 +22,8 @@ To build an Xcode image (don't forget to setup `FASTLANE_USER` and `FASTLANE_PAS [xcode-install](https://github.com/KrauseFx/xcode-install#usage)): ```bash -packer build -var xcode_version="12.3" \ +packer build -only=anka \ + -var xcode_version="12.3" \ -var fastlane_user="$FASTLANE_USER" \ -var fastlane_password="$FASTLANE_PASSWORD" \ templates/big-sur-xcode.json diff --git a/README.md b/README.md new file mode 100644 index 0000000..af88fa5 --- /dev/null +++ b/README.md @@ -0,0 +1,16 @@ +# macOS Packer Templates for Cirrus CI + +Repository with Packer templates to build VMs to use with [Cirrus CI](https://cirrus-ci.org/). + +* `catalina-base` image has only `brew` pre-installed +* `catalina-xcode-N` image is based of `catalina-base` and has `Xcode N` with [`Flutter`](https://flutter.dev/) pre-installed +* `big-sur-base` image has only `brew` pre-installed +* `big-sur-xcode-N` image is based of `big-sur-base` and has `Xcode N` with [`Flutter`](https://flutter.dev/) pre-installed + +See a full list of VMs available on Cirrus CI [here](https://cirrus-ci.org/guide/macOS/#list-of-available-images). + +# Supported Virtualization Technologies + +## Anka + +Please see [`Anka.md`](Anka.md) for details on how to build Anka VMs. \ No newline at end of file diff --git a/anka/scripts/install-anka-builder.sh b/scripts/install-anka-builder.sh similarity index 100% rename from anka/scripts/install-anka-builder.sh rename to scripts/install-anka-builder.sh diff --git a/anka/templates/big-sur-base.json b/templates/big-sur-base.json similarity index 94% rename from anka/templates/big-sur-base.json rename to templates/big-sur-base.json index 1ad7307..d916b60 100644 --- a/anka/templates/big-sur-base.json +++ b/templates/big-sur-base.json @@ -1,9 +1,10 @@ { "builders": [ { + "name": "anka", "type": "veertu-anka", "vm_name": "big-sur-base", - "source_vm_name": "big-sur-vanilla", + "installer_app": "/Applications/Install macOS Big Sur.app/", "cpu_count": "2", "enable_htt": true, "ram_size": "8G", diff --git a/anka/templates/big-sur-xcode.json b/templates/big-sur-xcode.json similarity index 99% rename from anka/templates/big-sur-xcode.json rename to templates/big-sur-xcode.json index ce7c111..06c8471 100644 --- a/anka/templates/big-sur-xcode.json +++ b/templates/big-sur-xcode.json @@ -1,6 +1,7 @@ { "builders": [ { + "name": "anka", "type": "veertu-anka", "vm_name": "big-sur-xcode-{{user `xcode_version`}}", "source_vm_name": "big-sur-base", diff --git a/anka/templates/catalina-base.json b/templates/catalina-base.json similarity index 98% rename from anka/templates/catalina-base.json rename to templates/catalina-base.json index 801aa55..5875c50 100644 --- a/anka/templates/catalina-base.json +++ b/templates/catalina-base.json @@ -1,6 +1,7 @@ { "builders": [ { + "name": "anka", "type": "veertu-anka", "vm_name": "catalina-base", "installer_app": "/Applications/Install macOS Catalina.app/", diff --git a/anka/templates/catalina-xcode.json b/templates/catalina-xcode.json similarity index 99% rename from anka/templates/catalina-xcode.json rename to templates/catalina-xcode.json index 086187f..6defcf2 100644 --- a/anka/templates/catalina-xcode.json +++ b/templates/catalina-xcode.json @@ -1,6 +1,7 @@ { "builders": [ { + "name": "anka", "type": "veertu-anka", "vm_name": "catalina-xcode-{{user `xcode_version`}}", "source_vm_name": "catalina-base",