From cda76e972f7b0bc655c3545cf456cbf3be8ef66d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebastian=20Ho=C3=9F?= Date: Mon, 4 Dec 2023 08:15:19 +0100 Subject: [PATCH] build .tar.gz files MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Sebastian Hoß --- .github/workflows/release.yml | 79 ++++----------------- HomebrewFormula/ilo.rb | 25 ------- build/copr/ilo.spec | 33 --------- docs/content/usage/install.md | 58 +-------------- docs/layouts/shortcodes/linuxinstall.html | 15 ---- docs/layouts/shortcodes/macinstall.html | 17 ----- docs/layouts/shortcodes/otherinstall.html | 15 ---- docs/layouts/shortcodes/windowsinstall.html | 18 ----- huber.yaml | 6 +- src/assembly/jvm.xml | 3 +- src/assembly/linux.xml | 3 +- src/assembly/mac.xml | 3 +- src/assembly/windows.xml | 3 +- 13 files changed, 20 insertions(+), 258 deletions(-) delete mode 100644 HomebrewFormula/ilo.rb delete mode 100644 build/copr/ilo.spec delete mode 100644 docs/layouts/shortcodes/linuxinstall.html delete mode 100644 docs/layouts/shortcodes/macinstall.html delete mode 100644 docs/layouts/shortcodes/otherinstall.html delete mode 100644 docs/layouts/shortcodes/windowsinstall.html diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 9ae618088..6abd71d3c 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -37,8 +37,6 @@ jobs: build: name: Build on ${{ matrix.os }} needs: prepare - outputs: - mac_sha256: ${{ steps.mac-checksum.outputs.sha256 }} runs-on: ${{ matrix.os }} strategy: matrix: @@ -89,10 +87,6 @@ jobs: --define sign.keyPass=${{ secrets.GPG_SECRET_KEY_PASSWORD }} --define project.build.outputTimestamp=${{ needs.prepare.outputs.build_timestamp }} verify - - id: mac-checksum - name: Capture MacOS SHA256 Checksum - if: needs.prepare.outputs.commit_count > 0 && runner.os == 'macOS' - run: echo "sha256=$(cat ./target/ilo-${{ needs.prepare.outputs.release_version }}-mac.zip.sha256)" >> $GITHUB_OUTPUT - id: upload-java name: Upload JVM Artifact if: needs.prepare.outputs.commit_count > 0 && runner.os == 'Linux' @@ -152,67 +146,18 @@ jobs: prerelease: false generate_release_notes: true files: | - artifacts/jvm/ilo-${{ needs.prepare.outputs.release_version }}-jvm.zip - artifacts/jvm/ilo-${{ needs.prepare.outputs.release_version }}-jvm.zip.asc - artifacts/jvm/ilo-${{ needs.prepare.outputs.release_version }}-jvm.zip.sha512 - artifacts/linux/ilo-${{ needs.prepare.outputs.release_version }}-linux.zip - artifacts/linux/ilo-${{ needs.prepare.outputs.release_version }}-linux.zip.asc - artifacts/linux/ilo-${{ needs.prepare.outputs.release_version }}-linux.zip.sha512 - artifacts/mac/ilo-${{ needs.prepare.outputs.release_version }}-mac.zip - artifacts/mac/ilo-${{ needs.prepare.outputs.release_version }}-mac.zip.asc - artifacts/mac/ilo-${{ needs.prepare.outputs.release_version }}-mac.zip.sha512 - artifacts/windows/ilo-${{ needs.prepare.outputs.release_version }}-windows.zip - artifacts/windows/ilo-${{ needs.prepare.outputs.release_version }}-windows.zip.asc - artifacts/windows/ilo-${{ needs.prepare.outputs.release_version }}-windows.zip.sha512 - packages: - name: Update Package Managers - needs: [prepare, build, release] - runs-on: ubuntu-latest - steps: - - id: checkout - name: Clone Git Repository - if: needs.prepare.outputs.commit_count > 0 - uses: actions/checkout@v4 - - id: update-copr-version - name: Update COPR Version - if: needs.prepare.outputs.commit_count > 0 - run: sed -i -- 's/${{ needs.prepare.outputs.previous_version }}/${{ needs.prepare.outputs.release_version }}/g' build/copr/ilo.spec - - id: update-homebrew-version - name: Update Homebrew Version - if: needs.prepare.outputs.commit_count > 0 - run: sed -i -- 's/${{ needs.prepare.outputs.previous_version }}/${{ needs.prepare.outputs.release_version }}/g' HomebrewFormula/ilo.rb - - id: update-homebrew-checksum - name: Update Homebrew Checksum - if: needs.prepare.outputs.commit_count > 0 - run: sed -i -- 's/sha256 \".*\"/sha256 \"${{ needs.build.outputs.mac_sha256 }}\"/g' HomebrewFormula/ilo.rb - - id: cpr - name: Create Pull Request - if: needs.prepare.outputs.commit_count > 0 - uses: peter-evans/create-pull-request@v5 - with: - token: ${{ secrets.PAT }} - commit-message: Update package-manager infos for latest release - committer: GitHub - author: ${{ github.actor }} <${{ github.actor }}@users.noreply.github.com> - title: Update package-manager infos for latest release - body: | - - COPR: `build/copr/ilo.spec` - - Homebrew: `HomebrewFormula/ilo.rb` - assignees: sebhoss - draft: false - base: main - branch: update-package-manager - delete-branch: true - - name: Enable Pull Request Automerge - if: needs.prepare.outputs.commit_count > 0 && steps.cpr.outputs.pull-request-operation == 'created' - run: gh pr merge --auto --rebase "${{ steps.cpr.outputs.pull-request-number }}" - env: - GITHUB_TOKEN: ${{ secrets.PAT }} - announce: - name: Release Announcement - needs: [prepare, packages] - runs-on: ubuntu-latest - steps: + artifacts/jvm/ilo-${{ needs.prepare.outputs.release_version }}-jvm.tar.gz + artifacts/jvm/ilo-${{ needs.prepare.outputs.release_version }}-jvm.tar.gz.asc + artifacts/jvm/ilo-${{ needs.prepare.outputs.release_version }}-jvm.tar.gz.sha512 + artifacts/linux/ilo-${{ needs.prepare.outputs.release_version }}-linux.tar.gz + artifacts/linux/ilo-${{ needs.prepare.outputs.release_version }}-linux.tar.gz.asc + artifacts/linux/ilo-${{ needs.prepare.outputs.release_version }}-linux.tar.gz.sha512 + artifacts/mac/ilo-${{ needs.prepare.outputs.release_version }}-mac.tar.gz + artifacts/mac/ilo-${{ needs.prepare.outputs.release_version }}-mac.tar.gz.asc + artifacts/mac/ilo-${{ needs.prepare.outputs.release_version }}-mac.tar.gz.sha512 + artifacts/windows/ilo-${{ needs.prepare.outputs.release_version }}-windows.tar.gz + artifacts/windows/ilo-${{ needs.prepare.outputs.release_version }}-windows.tar.gz.asc + artifacts/windows/ilo-${{ needs.prepare.outputs.release_version }}-windows.tar.gz.sha512 - id: email name: Send Mail if: needs.prepare.outputs.commit_count > 0 diff --git a/HomebrewFormula/ilo.rb b/HomebrewFormula/ilo.rb deleted file mode 100644 index f7fd4b45a..000000000 --- a/HomebrewFormula/ilo.rb +++ /dev/null @@ -1,25 +0,0 @@ -# This file is part of ilo. It is subject to the license terms in the LICENSE file found in the top-level -# directory of this distribution and at https://creativecommons.org/publicdomain/zero/1.0/. No part of ilo, -# including this file, may be copied, modified, propagated, or distributed except according to the terms contained -# in the LICENSE file. - -class Ilo < Formula - desc "Manage reproducible build environments" - version "2023.12.4" - homepage "https://ilo.projects.metio.wtf/" - license "CC0" - url "https://github.com/metio/ilo/releases/download/2023.12.4/ilo-2023.12.4-mac.zip" - sha256 "fff4e378271c6239934575e4fe9ce74128303fb2d6dabee0b7d230997b9b6ac4" - - depends_on "podman" => :optional - depends_on "docker" => :optional - depends_on "nerdctl" => :optional - - def install - bin.install "ilo" - end - - test do - system "#{bin}/ilo", "--help" - end -end diff --git a/build/copr/ilo.spec b/build/copr/ilo.spec deleted file mode 100644 index e14eaf8c8..000000000 --- a/build/copr/ilo.spec +++ /dev/null @@ -1,33 +0,0 @@ -Name: ilo -Version: 2023.12.4 -Release: 1%{?dist} -Summary: Manage Reproducible Build Environments -License: CC0 -URL: https://ilo.projects.metio.wtf/ -Source0: https://github.com/metio/%{name}/archive/refs/tags/%{version}.tar.gz -Requires: podman -BuildRequires: unzip -BuildRequires: curl - -%description -Manage Reproducible Build Environments - -%prep -/usr/bin/curl --location https://github.com/metio/%{name}/releases/download/%{version}/%{name}-%{version}-linux.zip --output ilo.zip - -%build -/usr/bin/unzip ilo.zip - -%install -mkdir -p %{buildroot}/%{_bindir} -install -m 0755 %{name}-%{version}/%{name} %{buildroot}/%{_bindir}/%{name} - -%check -# no checks yet - -%files -%license %{name}-%{version}/LICENSE -%{_bindir}/%{name} - -%changelog -# see release page for changes diff --git a/docs/content/usage/install.md b/docs/content/usage/install.md index f67a35f4f..74ba4b19c 100644 --- a/docs/content/usage/install.md +++ b/docs/content/usage/install.md @@ -16,7 +16,7 @@ Prebuilt binaries of `ilo` are available for each published release at: - https://github.com/metio/ilo/releases -Almost none of the widely used package managers have `ilo` in their official repositories yet. In case you want to help package `ilo` for your preferred operating system, take a look at the [open packaging issues](https://github.com/metio/ilo/issues?q=is%3Aopen+label%3A%22package%3A+windows%22%2C%22package%3A+alpine%22%2C%22package%3A+debian%22%2C%22package%3A+ubuntu%22%2C%22package%3A+arch%22%2C%22package%3A+fedora%22%2C%22package%3A+gentoo%22%2C%22package%3A+nix%22%2C%22package%3A+osx%22%2C%22package%3A+suse%22). +Download the package for your operating system and put the `ilo` binary in your `$PATH`. Use the JVM variant in case your operating system is not directly supported. ## Huber @@ -26,59 +26,3 @@ In case you are using [huber](https://github.com/innobead/huber), execute the fo $ huber repo add remote-repo --url https://github.com/metio/ilo $ huber install ilo ``` - -## Linux - -### Manual - -The [Linux](https://www.kernel.org/) distribution of `ilo` is a native executable and does not require any additional software to be installed. - -{{< linuxinstall >}} - -### Fedora - -[Fedora](https://getfedora.org/) users can install `ilo` from a [COPR](https://copr.fedorainfracloud.org/coprs/sebhoss/ilo/) repository like this: - -```console -$ sudo dnf copr enable sebhoss/ilo -$ sudo dnf install ilo -``` - -### Fedora Silverblue - -[Fedora Silverblue](https://silverblue.fedoraproject.org/) users can install `ilo` from the same [COPR](https://copr.fedorainfracloud.org/coprs/sebhoss/ilo/) by following these steps: - -```console -$ curl --location https://copr.fedorainfracloud.org/coprs/sebhoss/ilo/repo/fedora-$(rpm -E %fedora)/sebhoss-ilo-fedora-$(rpm -E %fedora).repo --output ilo.repo -$ sudo mv ilo.repo /etc/yum.repos.d/ilo.repo -$ rpm-ostree install ilo -``` - -## MacOS - -### Manual - -The [MacOS](https://www.apple.com/macos/) distribution of `ilo` is a native executable and does not require any additional software to be installed. - -{{< macinstall >}} - -### Homebrew - -[Homebrew](https://brew.sh/) users can install `ilo` from our tap like this: - -```console -$ brew tap metio/ilo https://github.com/metio/ilo -$ brew install metio/ilo/ilo -``` - -## Windows - -The [Windows](https://www.microsoft.com/en-us/windows) distribution of `ilo` is a native executable and does not require any additional software to be installed. - -{{< windowsinstall >}} - -## Other - -For all other platforms that support at least [Java 21](https://www.oracle.com/javadownload), run something like this: - -{{< otherinstall >}} diff --git a/docs/layouts/shortcodes/linuxinstall.html b/docs/layouts/shortcodes/linuxinstall.html deleted file mode 100644 index 56df71855..000000000 --- a/docs/layouts/shortcodes/linuxinstall.html +++ /dev/null @@ -1,15 +0,0 @@ - - -
$ cd /path/to/ilo/installation/folder
-$ curl --location https://github.com/metio/ilo/releases/download/{{ getenv "ILO_RELEASE" }}/ilo-{{ getenv "ILO_RELEASE" }}-linux.zip --output ilo.zip
-$ unzip ilo.zip
-$ chmod +x ilo-{{ getenv "ILO_RELEASE" }}/ilo
-$ ln --symbolic --relative ilo-{{ getenv "ILO_RELEASE" }}/ilo ~/.local/bin/ilo
-$ rm ilo.zip
-
-
diff --git a/docs/layouts/shortcodes/macinstall.html b/docs/layouts/shortcodes/macinstall.html deleted file mode 100644 index 1816636ef..000000000 --- a/docs/layouts/shortcodes/macinstall.html +++ /dev/null @@ -1,17 +0,0 @@ - - -
$ cd /path/to/ilo/installation/folder
-$ curl --location https://github.com/metio/ilo/releases/download/{{ getenv "ILO_RELEASE" }}/ilo-{{ getenv "ILO_RELEASE" }}-mac.zip --output ilo.zip
-$ unzip ilo.zip
-$ chmod +x ilo-{{ getenv "ILO_RELEASE" }}/ilo
-$ ln -s /path/to/ilo/installation/folder/ilo-{{ getenv "ILO_RELEASE" }}/ilo /usr/local/bin/ilo
-# in case the above gives you a permission denied error, execute the same command with sudo, e.g. 'sudo !!'
-# in order to fix permissions run: sudo chmod -R u=rwX,go=rX /usr/local/bin
-$ rm ilo.zip
-
-
diff --git a/docs/layouts/shortcodes/otherinstall.html b/docs/layouts/shortcodes/otherinstall.html deleted file mode 100644 index f9c162829..000000000 --- a/docs/layouts/shortcodes/otherinstall.html +++ /dev/null @@ -1,15 +0,0 @@ - - -
$ cd /path/to/ilo/installation/folder
-$ curl --location https://github.com/metio/ilo/releases/download/{{ getenv "ILO_RELEASE" }}/ilo-{{ getenv "ILO_RELEASE" }}-jvm.zip --output ilo.zip
-$ unzip ilo.zip
-$ chmod +x ilo-{{ getenv "ILO_RELEASE" }}/bin/ilo
-# place 'bin' folder in your PATH
-$ rm ilo.zip
-
-
diff --git a/docs/layouts/shortcodes/windowsinstall.html b/docs/layouts/shortcodes/windowsinstall.html deleted file mode 100644 index 3dad1912d..000000000 --- a/docs/layouts/shortcodes/windowsinstall.html +++ /dev/null @@ -1,18 +0,0 @@ - - -
# PowerShell
-$ New-Item -Path $env:USERPROFILE -Name "bin" -ItemType "directory" # create directory if it does not exit
-$ control sysdm.cpl # manually add '$env:USERPROFILE\bin' to the PATH of your user account
-$ echo $env:PATH # ensure that the 'bin' directory is in your PATH
-$ Set-Location -Path C:\path\to\ilo\installation\folder
-$ Invoke-RestMethod -Uri https://github.com/metio/ilo/releases/download/{{ getenv "ILO_RELEASE" }}/ilo-{{ getenv "ILO_RELEASE" }}-windows.zip -OutFile "ilo.zip"
-$ Expand-Archive -Path "ilo.zip" -DestinationPath "."
-$ Copy-Item -Path "ilo-{{ getenv "ILO_RELEASE" }}\ilo.exe" -Destination "$env:USERPROFILE\bin\ilo.exe"
-$ Remove-Item -Path "ilo.zip"
-
-
diff --git a/huber.yaml b/huber.yaml index c7120a5a1..9e07ed2b7 100644 --- a/huber.yaml +++ b/huber.yaml @@ -8,11 +8,11 @@ targets: - LinuxAmd64: artifact_templates: - - "ilo-{version}-linux.zip" + - "ilo-{version}-linux.tar.gz" - MacOS: artifact_templates: - - "ilo-{version}-mac.zip" + - "ilo-{version}-mac.tar.gz" - Windows: artifact_templates: - - "ilo-{version}-windows.zip" + - "ilo-{version}-windows.tar.gz" detail: ~ diff --git a/src/assembly/jvm.xml b/src/assembly/jvm.xml index bab7394e0..3a26b4c76 100644 --- a/src/assembly/jvm.xml +++ b/src/assembly/jvm.xml @@ -12,7 +12,7 @@ true - zip + tar.gz @@ -24,7 +24,6 @@ ${project.basedir} - README.md LICENSE diff --git a/src/assembly/linux.xml b/src/assembly/linux.xml index eaa50d5de..c3018b524 100644 --- a/src/assembly/linux.xml +++ b/src/assembly/linux.xml @@ -12,7 +12,7 @@ true - zip + tar.gz @@ -27,7 +27,6 @@ ${project.basedir} - README.md LICENSE diff --git a/src/assembly/mac.xml b/src/assembly/mac.xml index ba04068dd..ed24e2acd 100644 --- a/src/assembly/mac.xml +++ b/src/assembly/mac.xml @@ -12,7 +12,7 @@ true - zip + tar.gz @@ -27,7 +27,6 @@ ${project.basedir} - README.md LICENSE diff --git a/src/assembly/windows.xml b/src/assembly/windows.xml index 5bc7baab1..6edf4296e 100644 --- a/src/assembly/windows.xml +++ b/src/assembly/windows.xml @@ -12,7 +12,7 @@ true - zip + tar.gz @@ -27,7 +27,6 @@ ${project.basedir} - README.md LICENSE