aboutsummarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorZsolt Donca2023-01-13 14:53:55 +0200
committerZsolt Donca2023-01-13 14:54:34 +0200
commitcf08d3e28e659f2bf3cf7e6e94484ba92fae87c1 (patch)
treecb149be4dff5ba2c0c4bebc0feddf3a5f51c0e3b
parent58482b39894d4d162de4555d5158bee92a791be4 (diff)
downloadaur-cf08d3e28e659f2bf3cf7e6e94484ba92fae87c1.tar.gz
Reworked the whole thing
-rw-r--r--.SRCINFO17
-rw-r--r--.gitignore6
-rw-r--r--PKGBUILD27
-rwxr-xr-xawscli2
-rw-r--r--logging.properties1
-rw-r--r--okta-aws3
-rwxr-xr-xokta-aws-cli-login7
-rwxr-xr-xokta-credential_process12
-rwxr-xr-xokta-listroles6
-rw-r--r--okta-sls3
-rwxr-xr-xwithokta9
11 files changed, 79 insertions, 14 deletions
diff --git a/.SRCINFO b/.SRCINFO
index c53e83519ab9..ce51db709727 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -6,10 +6,23 @@ pkgbase = okta-aws-cli-assume-role
arch = any
license = Apache
depends = jre11-openjdk-headless
+ depends = bash
noextract = okta-aws-cli-3.0.0.jar
source = https://github.com/oktadeveloper/okta-aws-cli-assume-role/releases/download/v3.0.0/okta-aws-cli-3.0.0.jar
- source = okta-aws-cli-login
+ source = logging.properties
+ source = awscli
+ source = okta-aws
+ source = okta-credential_process
+ source = okta-listroles
+ source = okta-sls
+ source = withokta
sha256sums = d57b8fd6de20e2bf595782690c273eb806aa555ceab20d5fa7608774f49aee78
- sha256sums = 83aa504c3fdc2b7549f4e656ef69ea9ffa67ba72fc32a2c1a5c46e282371a398
+ sha256sums = 8329338feaf876b9f69a6dd3017daa6b3b3ae1964f6d1affb1025bb3e60a1cd2
+ sha256sums = f97662794c03af235a6180bff312744aef2cdc42982b8f832559abd29e7a1a20
+ sha256sums = 1a61e685ecf8f8eb0f2648ebed25e4a46361ba65f5570aec0824c0d55c4687c5
+ sha256sums = 7db30ef7b859bd038c1aa1330b195ee55c4892aea115eb66901f76fe0358d669
+ sha256sums = c43efdabcdb139108877a3d3fc3a0042e12d808ecdf40e5ed80149c0410ce42e
+ sha256sums = fdd1686a380673dd4c2773fdf42213cbea800edd2dc9febe0438701d5e9fbb8f
+ sha256sums = 5bc43db550eea2cb41f8f640a17af46a1f6cc8bcc61f6dea69b6a2e49f68db75
pkgname = okta-aws-cli-assume-role
diff --git a/.gitignore b/.gitignore
index cf0c1bf14db6..ce588f31436d 100644
--- a/.gitignore
+++ b/.gitignore
@@ -2,4 +2,8 @@
!.SRCINFO
!PKGBUILD
!README.md
-!okta-aws-cli-login
+!okta-aws
+!okta-sls
+!withokta
+!logging.properties
+!awscli
diff --git a/PKGBUILD b/PKGBUILD
index 074ffe9242ce..4207d5346064 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -8,18 +8,37 @@ pkgdesc="Okta AWS CLI Assume Role Tool"
arch=('any')
url=https://github.com/oktadeveloper/okta-aws-cli-assume-role
license=('Apache')
-depends=(jre11-openjdk-headless)
+depends=(jre11-openjdk-headless bash)
source=(
"$url/releases/download/v$pkgver/okta-aws-cli-$pkgver.jar"
- okta-aws-cli-login
+ logging.properties
+ awscli
+ okta-aws
+ okta-credential_process
+ okta-listroles
+ okta-sls
+ withokta
)
noextract=("okta-aws-cli-$pkgver.jar")
sha256sums=('d57b8fd6de20e2bf595782690c273eb806aa555ceab20d5fa7608774f49aee78'
- '83aa504c3fdc2b7549f4e656ef69ea9ffa67ba72fc32a2c1a5c46e282371a398')
+ '8329338feaf876b9f69a6dd3017daa6b3b3ae1964f6d1affb1025bb3e60a1cd2'
+ 'f97662794c03af235a6180bff312744aef2cdc42982b8f832559abd29e7a1a20'
+ '1a61e685ecf8f8eb0f2648ebed25e4a46361ba65f5570aec0824c0d55c4687c5'
+ '7db30ef7b859bd038c1aa1330b195ee55c4892aea115eb66901f76fe0358d669'
+ 'c43efdabcdb139108877a3d3fc3a0042e12d808ecdf40e5ed80149c0410ce42e'
+ 'fdd1686a380673dd4c2773fdf42213cbea800edd2dc9febe0438701d5e9fbb8f'
+ '5bc43db550eea2cb41f8f640a17af46a1f6cc8bcc61f6dea69b6a2e49f68db75'
+ )
package() {
cd "$srcdir" || exit 1
install -Dm 644 okta-aws-cli-$pkgver.jar "$pkgdir/usr/share/java/okta-aws-cli/okta-aws-cli.jar"
- install -Dm 755 okta-aws-cli-login "$pkgdir/usr/bin/okta-aws-cli-login"
+ install -Dm 644 logging.properties "$pkgdir/usr/share/java/okta-aws-cli/logging.properties"
+
+ install -Dm 755 awscli "$pkgdir/usr/local/bin/awscli"
+ install -Dm 755 okta-aws "$pkgdir/usr/local/bin/okta-aws"
+ install -Dm 755 okta-credential_process "$pkgdir/usr/local/bin/okta-credential_process"
+ install -Dm 755 okta-listroles "$pkgdir/usr/local/bin/okta-listroles"
+ install -Dm 755 withokta "$pkgdir/usr/local/bin/withokta"
}
diff --git a/awscli b/awscli
new file mode 100755
index 000000000000..8330d997c7c9
--- /dev/null
+++ b/awscli
@@ -0,0 +1,2 @@
+#!/bin/bash
+withokta aws default "$@"
diff --git a/logging.properties b/logging.properties
new file mode 100644
index 000000000000..d781f3cd8be0
--- /dev/null
+++ b/logging.properties
@@ -0,0 +1 @@
+com.amazonaws.auth.profile.internal.BasicProfileConfigLoader = NONE
diff --git a/okta-aws b/okta-aws
new file mode 100644
index 000000000000..3570e45aee45
--- /dev/null
+++ b/okta-aws
@@ -0,0 +1,3 @@
+#!/bin/bash
+
+OKTA_PROFILE="$1" withokta aws --profile "$1" "${@:2}" \ No newline at end of file
diff --git a/okta-aws-cli-login b/okta-aws-cli-login
deleted file mode 100755
index 44a878f1ddaa..000000000000
--- a/okta-aws-cli-login
+++ /dev/null
@@ -1,7 +0,0 @@
-#!/bin/sh
-if [ -z "$1" ]; then
- echo "Logging into AWS via Okta..."
- set -- sts get-caller-identity
-fi
-
-exec /usr/lib/jvm/java-11-openjdk/bin/java -jar /usr/share/java/okta-aws-cli/okta-aws-cli.jar "$@"
diff --git a/okta-credential_process b/okta-credential_process
new file mode 100755
index 000000000000..cd0bd70f534c
--- /dev/null
+++ b/okta-credential_process
@@ -0,0 +1,12 @@
+#!/bin/bash
+roleARN="$1"
+shift
+if [ -n "$https_proxy" ]; then
+ readonly URI_REGEX='^(([^:/?#]+):)?(//((([^:/?#]+)@)?([^:/?#]+)(:([0-9]+))?))?(/([^?#]*))(\?([^#]*))?(#(.*))?'
+ [[ $https_proxy =~ ${URI_REGEX} ]] && PROXY_CONFIG="-Dhttps.proxyHost=${BASH_REMATCH[7]} -Dhttps.proxyPort=${BASH_REMATCH[9]}"
+fi
+env OKTA_AWS_ROLE_TO_ASSUME="$roleARN" \
+ /usr/lib/jvm/java-11-openjdk/bin/java ${PROXY_CONFIG} \
+ -Djava.util.logging.config.file=/usr/share/java/okta-aws-cli/logging.properties \
+ -classpath /usr/share/java/okta-aws-cli/okta-aws-cli.jar \
+ com.okta.tools.CredentialProcess
diff --git a/okta-listroles b/okta-listroles
new file mode 100755
index 000000000000..fa829f2c77a8
--- /dev/null
+++ b/okta-listroles
@@ -0,0 +1,6 @@
+#!/bin/bash
+if [ -n "$https_proxy" ]; then
+ readonly URI_REGEX='^(([^:/?#]+):)?(//((([^:/?#]+)@)?([^:/?#]+)(:([0-9]+))?))?(/([^?#]*))(\?([^#]*))?(#(.*))?'
+ [[ $https_proxy =~ ${URI_REGEX} ]] && PROXY_CONFIG="-Dhttps.proxyHost=${BASH_REMATCH[7]} -Dhttps.proxyPort=${BASH_REMATCH[9]}"
+fi
+java ${PROXY_CONFIG} -Djava.util.logging.config.file=/tmp/.okta/logging.properties -classpath /tmp/.okta/okta-aws-cli.jar com.okta.tools.ListRoles
diff --git a/okta-sls b/okta-sls
new file mode 100644
index 000000000000..3ddcf188f46d
--- /dev/null
+++ b/okta-sls
@@ -0,0 +1,3 @@
+#!/bin/bash
+
+OKTA_PROFILE="$1" withokta sls --stage "$1" "${@:2}" \ No newline at end of file
diff --git a/withokta b/withokta
new file mode 100755
index 000000000000..c780fd53a045
--- /dev/null
+++ b/withokta
@@ -0,0 +1,9 @@
+#!/bin/bash
+if [ -n "$https_proxy" ]; then
+ readonly URI_REGEX='^(([^:/?#]+):)?(//((([^:/?#]+)@)?([^:/?#]+)(:([0-9]+))?))?(/([^?#]*))(\?([^#]*))?(#(.*))?'
+ [[ $https_proxy =~ ${URI_REGEX} ]] && PROXY_CONFIG="-Dhttps.proxyHost=${BASH_REMATCH[7]} -Dhttps.proxyPort=${BASH_REMATCH[9]}"
+fi
+/usr/lib/jvm/java-11-openjdk/bin/java ${PROXY_CONFIG} \
+ -Djava.util.logging.config.file=/usr/share/java/okta-aws-cli/logging.properties \
+ -classpath /usr/share/java/okta-aws-cli/okta-aws-cli.jar \
+ com.okta.tools.WithOkta "$@"