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

feat: add an install.sh script #1034

Open
wants to merge 5 commits into
base: main
Choose a base branch
from
Open

Conversation

colinlodter
Copy link

@colinlodter colinlodter commented Dec 4, 2024

Description

This pull request adds an install.sh script to automate the process of downloading the latest available binary for uds-cli. The script identifies the latest release, downloads the appropriate binary for the user’s operating system and architecture, and verifies it installs. This improves the user experience by simplifying the installation process.

Related Issue

Relates to #1033

Type of change

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Other (security config, docs update, etc)

Checklist before merging

@colinlodter colinlodter requested a review from a team as a code owner December 4, 2024 21:45
@colinlodter colinlodter changed the title add an install.sh script add an install.sh script Dec 4, 2024
@colinlodter colinlodter changed the title add an install.sh script feat: add an install.sh script Dec 4, 2024
Comment on lines +14 to +17
An `install.sh` file is also available for installation with curl (requires `sudo`):
```
curl -sSL https://raw.githubusercontent.com/defenseunicorns/uds-cli/main/install.sh | bash
```
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think I'd prefer something more like the zarf docs here: https://docs.zarf.dev/getting-started/install/#github-releases

Essentially it just provides the curl, chmod, and mv commands you'd need to grab the right binary per your system, in easy copy/paste blocks. I think it still meets the desire of providing an alternative install mechanism that's relatively simple, but avoids the (1) potential suspect nature of piping a curl-ed script right to a shell and (2) keeps it simple and trusts the end user to know their platform. Open to other opinions here though. I think this is generally in line with zarf as linked, but also kubectl (which also teaches additional good habits like verifying the sha, etc).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants