Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Create Compiled Arlon CLI for Linux and the Build Infrastructure #60

Closed
1 task
cre8minus1 opened this issue Jun 2, 2022 · 5 comments · Fixed by #174 or #175
Closed
1 task

Create Compiled Arlon CLI for Linux and the Build Infrastructure #60

cre8minus1 opened this issue Jun 2, 2022 · 5 comments · Fixed by #174 or #175
Assignees
Labels
enhancement New feature or request Needs Review For all new issues that are unplanned, have no milestone or project. size:L sprint1 sprint2 sprint3
Milestone

Comments

@cre8minus1
Copy link
Member

cre8minus1 commented Jun 2, 2022

To make Arlon easier to use we need to create an automated build system that can publish the cli for Linux.

The end goal is to make using Arlon much easier, with a complied CLI users can download and go.
Users of any desktop OS should be able to download the CLI and use it.

  • Allow users to install using APT

Other OS support will be delivered after Linux

Aha! Link: https://pf9.aha.io/features/ARLON-156

@cre8minus1 cre8minus1 added the enhancement New feature or request label Jun 2, 2022
@cre8minus1 cre8minus1 added this to the 0.9.0 milestone Jun 3, 2022
@cre8minus1 cre8minus1 added this to 0.9.0 Jun 3, 2022
@cre8minus1 cre8minus1 moved this to Todo in 0.9.0 Jun 7, 2022
@bcle
Copy link
Collaborator

bcle commented Jul 1, 2022

It may be easier to just publish binaries without package system integration. The only downside with that is it won't have a built-in upgrade feature.

@bcle bcle added the size:L label Jul 1, 2022
@bcle
Copy link
Collaborator

bcle commented Jul 1, 2022

I just noticed that issue #61 is about a self-update system. Perhaps a standalone binary combined with that feature would solve the lack of integration with native package manager.

@cruizen cruizen self-assigned this Jul 6, 2022
@cruizen
Copy link
Member

cruizen commented Jul 6, 2022

I can look into this (tagging and releasing binaries).

In addition, GoReleaser has support for creating Linux packages and Homebrew taps

With GoReleaser, you can:

  • Cross-compile your Go project
  • Release to GitHub, GitLab and Gitea
  • Create nightly builds
  • Create Docker images and manifests
  • Create Linux packages and Homebrew taps
  • Sign artifacts, checksums and container images
  • Announce new releases on Twitter, Slack, Discord and others
  • Generate SBOMs (Software Bill of Materials) for binaries and container images

There are alternatives to GoReleaser too, like goxc (note that go build also supports cross-compilation since golang v1.05 and there are alternative GitHub actions workflows on GitHub marketplace) + ghr etc.

@bcle
Copy link
Collaborator

bcle commented Jul 7, 2022

@cruizen can you adjust the effort estimate, and also break this into estimates for each of the OSes.

@bcle bcle added the Needs Review For all new issues that are unplanned, have no milestone or project. label Jul 7, 2022
@cre8minus1
Copy link
Member Author

I'm splitting this into 3 issues one for each OS
Linux is the 0.9.0 target

@cre8minus1 cre8minus1 changed the title Create Compiled Arlon CLI for MacOS, Windows and Linux and the Build Infrastructure Create Compiled Arlon CLI for Linux and the Build Infrastructure Jul 14, 2022
@cruizen cruizen moved this from Todo to In Progress in 0.9.0 Aug 4, 2022
@cruizen cruizen moved this from In Progress to Todo in 0.9.0 Aug 4, 2022
@cruizen cruizen moved this from Todo to In Progress in 0.9.0 Aug 8, 2022
@cruizen cruizen moved this from In Progress to In Review in 0.9.0 Aug 26, 2022
Repository owner moved this from In Review to Done in 0.9.0 Aug 26, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request Needs Review For all new issues that are unplanned, have no milestone or project. size:L sprint1 sprint2 sprint3
Projects
Status: Done
3 participants