mirror of
https://github.com/cirruslabs/macos-image-templates.git
synced 2026-10-21 09:41:48 +02:00
Compare commits
1
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
ebc84e90df |
@@ -197,6 +197,8 @@ jobs:
|
|||||||
|
|
||||||
- name: Build Xcode image
|
- name: Build Xcode image
|
||||||
run: |
|
run: |
|
||||||
|
tart clone "ghcr.io/cirruslabs/macos-$MACOS_VERSION-base:latest" "$MACOS_VERSION-xcode:$XCODE_VERSION"
|
||||||
|
tart set "$MACOS_VERSION-xcode:$XCODE_VERSION" --disk-size 140
|
||||||
packer init templates/xcode.pkr.hcl
|
packer init templates/xcode.pkr.hcl
|
||||||
packer build \
|
packer build \
|
||||||
-var "macos_version=$MACOS_VERSION" \
|
-var "macos_version=$MACOS_VERSION" \
|
||||||
|
|||||||
@@ -66,6 +66,8 @@ jobs:
|
|||||||
|
|
||||||
- name: Build release image
|
- name: Build release image
|
||||||
run: |
|
run: |
|
||||||
|
tart clone "ghcr.io/cirruslabs/macos-$MACOS_VERSION-base:latest" "$MACOS_VERSION-xcode:$XCODE_RELEASE_VERSION"
|
||||||
|
tart set "$MACOS_VERSION-xcode:$XCODE_RELEASE_VERSION" --disk-size 140
|
||||||
packer init templates/xcode.pkr.hcl
|
packer init templates/xcode.pkr.hcl
|
||||||
packer build \
|
packer build \
|
||||||
-var "macos_version=$MACOS_VERSION" \
|
-var "macos_version=$MACOS_VERSION" \
|
||||||
@@ -141,6 +143,8 @@ jobs:
|
|||||||
|
|
||||||
- name: Build runner image
|
- name: Build runner image
|
||||||
run: |
|
run: |
|
||||||
|
tart clone "ghcr.io/cirruslabs/macos-$MACOS_VERSION-base:latest" "$MACOS_VERSION-xcode:runner"
|
||||||
|
tart set "$MACOS_VERSION-xcode:runner" --disk-size "$DISK_SIZE"
|
||||||
packer init templates/xcode.pkr.hcl
|
packer init templates/xcode.pkr.hcl
|
||||||
packer build \
|
packer build \
|
||||||
-var tag=runner \
|
-var tag=runner \
|
||||||
|
|||||||
@@ -383,6 +383,8 @@ jobs:
|
|||||||
- name: Build runner image
|
- name: Build runner image
|
||||||
if: steps.select.outputs.build == 'true'
|
if: steps.select.outputs.build == 'true'
|
||||||
run: |
|
run: |
|
||||||
|
tart clone "ghcr.io/cirruslabs/macos-$MACOS_VERSION-base:latest" "$MACOS_VERSION-xcode:runner"
|
||||||
|
tart set "$MACOS_VERSION-xcode:runner" --disk-size "$DISK_SIZE"
|
||||||
packer init templates/xcode.pkr.hcl
|
packer init templates/xcode.pkr.hcl
|
||||||
packer build \
|
packer build \
|
||||||
-var tag=runner \
|
-var tag=runner \
|
||||||
|
|||||||
+10
-2
@@ -58,12 +58,12 @@ variable "android_sdk_tools_version" {
|
|||||||
}
|
}
|
||||||
|
|
||||||
source "tart-cli" "tart" {
|
source "tart-cli" "tart" {
|
||||||
vm_base_name = "ghcr.io/cirruslabs/macos-${var.macos_version}-base:latest"
|
// The workflow sizes the VM before boot; only the guest daemon resizes APFS.
|
||||||
|
recovery_partition = "keep"
|
||||||
// use tag or the last element of the xcode_version list
|
// use tag or the last element of the xcode_version list
|
||||||
vm_name = "${var.macos_version}-xcode:${var.tag != "" ? var.tag : var.xcode_version[0]}"
|
vm_name = "${var.macos_version}-xcode:${var.tag != "" ? var.tag : var.xcode_version[0]}"
|
||||||
cpu_count = 4
|
cpu_count = 4
|
||||||
memory_gb = 8
|
memory_gb = 8
|
||||||
disk_size_gb = var.disk_size
|
|
||||||
headless = true
|
headless = true
|
||||||
ssh_password = "admin"
|
ssh_password = "admin"
|
||||||
ssh_username = "admin"
|
ssh_username = "admin"
|
||||||
@@ -95,7 +95,15 @@ build {
|
|||||||
sources = ["source.tart-cli.tart"]
|
sources = ["source.tart-cli.tart"]
|
||||||
|
|
||||||
provisioner "shell" {
|
provisioner "shell" {
|
||||||
|
// Allow 6 GB for boot/recovery partitions and metadata; Tart uses decimal GB.
|
||||||
inline = [
|
inline = [
|
||||||
|
"minimum_kb=${floor((var.disk_size - 6) * 1000000000 / 1024)}",
|
||||||
|
"for ((attempt = 0; attempt < 60; attempt++)); do",
|
||||||
|
" size_kb=$(df -k /System/Volumes/Data | awk 'NR == 2 {print $2}')",
|
||||||
|
" [[ $size_kb -ge $minimum_kb ]] && break",
|
||||||
|
" sleep 2",
|
||||||
|
"done",
|
||||||
|
"[[ $size_kb -ge $minimum_kb ]] || { echo 'APFS did not expand to ${var.disk_size} GB within 120 seconds.' >&2; exit 1; }",
|
||||||
"source ~/.zprofile",
|
"source ~/.zprofile",
|
||||||
"brew --version",
|
"brew --version",
|
||||||
"brew update",
|
"brew update",
|
||||||
|
|||||||
Reference in New Issue
Block a user