@@ -90,14 +90,55 @@ jobs:
9090 run : |
9191 VERSION="${{ github.ref_name }}"
9292 VERSION_NUM="${VERSION#v}"
93-
94- ARM64_SHA=$(curl -sL "https://github.com/NodeOps-app/createos-cli/releases/download/${VERSION}/createos-darwin-arm64.sha256")
95- AMD64_SHA=$(curl -sL "https://github.com/NodeOps-app/createos-cli/releases/download/${VERSION}/createos-darwin-amd64.sha256")
96-
97- sed -i "s/version \".*\"/version \"${VERSION_NUM}\"/" Formula/createos.rb
98- sed -i "/on_arm/,/end/{s/sha256 \".*\"/sha256 \"${ARM64_SHA}\"/}" Formula/createos.rb
99- sed -i "/on_intel/,/end/{s/sha256 \".*\"/sha256 \"${AMD64_SHA}\"/}" Formula/createos.rb
100- sed -i "s|releases/download/v[^/]*/|releases/download/${VERSION}/|g" Formula/createos.rb
93+ BASE="https://github.com/NodeOps-app/createos-cli/releases/download/${VERSION}"
94+
95+ DARWIN_ARM64=$(curl -sL "${BASE}/createos-darwin-arm64.sha256")
96+ DARWIN_AMD64=$(curl -sL "${BASE}/createos-darwin-amd64.sha256")
97+ LINUX_ARM64=$(curl -sL "${BASE}/createos-linux-arm64.sha256")
98+ LINUX_AMD64=$(curl -sL "${BASE}/createos-linux-amd64.sha256")
99+
100+ cat > Formula/createos.rb <<FORMULA
101+ class Createos < Formula
102+ desc "CreateOS CLI - Manage your infrastructure"
103+ homepage "https://github.com/NodeOps-app/createos-cli"
104+ version "${VERSION_NUM}"
105+ license "MIT"
106+
107+ on_macos do
108+ on_arm do
109+ url "${BASE}/createos-darwin-arm64"
110+ sha256 "${DARWIN_ARM64}"
111+ end
112+
113+ on_intel do
114+ url "${BASE}/createos-darwin-amd64"
115+ sha256 "${DARWIN_AMD64}"
116+ end
117+ end
118+
119+ on_linux do
120+ on_arm do
121+ url "${BASE}/createos-linux-arm64"
122+ sha256 "${LINUX_ARM64}"
123+ end
124+
125+ on_intel do
126+ url "${BASE}/createos-linux-amd64"
127+ sha256 "${LINUX_AMD64}"
128+ end
129+ end
130+
131+ def install
132+ os = OS.mac? ? "darwin" : " linux"
133+ arch = Hardware::CPU.arm? ? "arm64" : " amd64"
134+ bin.install "createos-\#{os}-\#{arch}" => "createos"
135+ end
136+
137+ test do
138+ system "\#{bin}/createos", "version"
139+ end
140+ end
141+ FORMULA
101142
102143 git config user.name "github-actions"
103144 git config user.email "github-actions@github.com"
0 commit comments