-
Notifications
You must be signed in to change notification settings - Fork 32
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
Support for building self-contained binaries for easier installation #30
Conversation
This adds `scripts/build.sh` which produces a pex binary `dist/onelogin-aws-login`. The pex binary supports multiple archs/platforms - currently, it is runnable on both linux/macOS, x86_64/i686. The existing way to install onelogin-aws-login with `pip install` is still supported. Note that a pex binary doesn't contain a python runtime. You still need to install python3 in order to run the onelogin-aws-login command. However, this will still allow you to install onelogin-aws-login without polluting your python env. Also, installing onelogin-aws-login is easier as it is just a matter of running `curl -o onelogin-aws-login <onelogin-aws-login release> && chmod +x onelogin-aws-login`. Resolves physera#29 --- This is verified to work by: - Running `pip install -e .` and then `onelogin-aws-login` - Running `scripts/build.sh` and then `dist/onelogin-aws-login` - Running `docker build -t onelogin-aws-login-test .` with Dockerfile: ``` FROM alpine:3.7 RUN apk add --update --no-cache python3 ADD dist/onelogin-aws-login / ``` and running `docker run --rm -it onelogin-aws-login /onelogin-aws-login -h`
Apologies for the late response. Thanks for submitting this, we'd love to get it in! Could you update the conflicts on the PR to accommodate some other changes that have landed in the interim? |
@slycoder No worry, thanks for taking your time! Just fixed the conflict - resolving it produced no commit diff because it was just due to a fix to a line-ending. |
@slycoder Just for your notice, the last travis build for this is failing due to the same errors seen in the current master. |
Sorry about the delay. I'll go ahead and merge. |
…llation (physera#30)" (physera#42) This reverts commit e54a44c.
This adds
scripts/build.sh
which produces a pex binarydist/onelogin-aws-login
.The pex binary supports multiple archs/platforms - currently, it is runnable on both linux/macOS, x86_64/i686.
The existing way to install onelogin-aws-login with
pip install
is still supported.Note that a pex binary doesn't contain a python runtime. You still need to install python3 in order to run the onelogin-aws-login command.
However, this will still allow you to install onelogin-aws-login without polluting your python env. Also, installing onelogin-aws-login is easier as it is just a matter of running
curl -o onelogin-aws-login <onelogin-aws-login release> && chmod +x onelogin-aws-login
.Resolves #29
This is verified to work by:
pip install -e .
and thenonelogin-aws-login
scripts/build.sh
and thendist/onelogin-aws-login
docker build -t onelogin-aws-login-test .
with Dockerfile:docker run --rm -it onelogin-aws-login /onelogin-aws-login -h