Install AWS CLI through Jamf

discounteggroll
New Contributor III

Hi, I'm looking to make a policy that will install AWS CLI, and have been running into a few problems. I originally tried via pip, but ran into permissions issues during the execution.

I then tried via brew, however I am running into a roadblock there. Currently, I am able to successfully get brew installed via a script I found here. I then created another policy with the command 'brew install awsci', configured under files and processors-> execute comand, but get the response 'brew not found'.

I accounted this to the command being run as root instead of the user, so I then tried to create a script (attached below) that would run as the current user. Unfortunately, it returned with: 'Script result: bash: brew: command not found'
dc721d0b34e746689cf79474683df2d5

I am able to manually enter the command 'brew install awscli' from the logged in user via terminal, so I know that works...any thoughts on how to get this working completely via jamf?

Thanks in advance

2 ACCEPTED SOLUTIONS

Asnyder
Contributor III

You might want to setup an if/then to make sure homebrew is installed and if not then install it and then install awscli. There could be something else causing it to throw that error but I would double check all endpoints have it installed. If you know it's installed try adding the path to the command. I think it would look like "/usr/local/bin/brew install awscli".

View solution in original post

stevewood
Honored Contributor II
Honored Contributor II

@discounteggroll as @Asnyder pointed out at the end, you probably need to call the full path to the brew binary. You can probably use which or do a find to figure out where the brew binary is located and then use that path in your script:

which brew

or

sudo find / -name "brew" -print

View solution in original post

5 REPLIES 5

Asnyder
Contributor III

You might want to setup an if/then to make sure homebrew is installed and if not then install it and then install awscli. There could be something else causing it to throw that error but I would double check all endpoints have it installed. If you know it's installed try adding the path to the command. I think it would look like "/usr/local/bin/brew install awscli".

stevewood
Honored Contributor II
Honored Contributor II

@discounteggroll as @Asnyder pointed out at the end, you probably need to call the full path to the brew binary. You can probably use which or do a find to figure out where the brew binary is located and then use that path in your script:

which brew

or

sudo find / -name "brew" -print

discounteggroll
New Contributor III

Thanks you two, I modified the script to add the path, and it now works as expected.

d44f5231933642fb816aaf781ef99c25

bentoms
Release Candidate Programs Tester

There's also some AutoPkg recipes for this title, with some EA's that might help: https://github.com/autopkg/dataJAR-recipes/tree/master/AWSCLI

Mcleveland
New Contributor III

A lot has changed during this time, but just in case anyone goes to this post:

https://github.com/Installomator/Installomator <--- would be a good resource to use

awscli2)
    # credit: Bilal Habib (@Pro4TLZZ)
    name="AWSCLI"
    type="pkg"
    packageID="com.amazon.aws.cli2"
    downloadURL="https://awscli.amazonaws.com/AWSCLIV2.pkg"
    appNewVersion=$( curl -fs "h