16 Commits

Author SHA1 Message Date
Shubham Agrawal be769618aa updated dockerfile for arm 2021-05-06 20:10:24 +05:30
Shubham Agrawal 487521c8bc provided 777 to /home/drone 2021-05-06 19:39:42 +05:30
Shubham Agrawal 79700f47fe Allow non-root user to run git clone plugin 2021-05-06 19:12:05 +05:30
Brad Rydzewski 41c2120a63 improve logs indicating HOME directory created 2021-05-04 21:17:22 -04:00
Brad Rydzewski 9a0e8cc9d6 create HOME directory if not exists 2021-05-04 21:16:15 -04:00
Brad Rydzewski 16f4dd8829 revert to alpine 3.12 due to dns issue 2021-05-04 21:07:07 -04:00
Brad Rydzewski e2f563e07f Merge pull request #38 from drone/update_git_version
Update git version to 2.30.2 to fix git clone vulnerability
2021-03-23 10:17:32 -04:00
Shubham Agrawal 56e4928d73 Update git version to 2.30.2 2021-03-19 20:31:24 +05:30
Shubham Agrawal 70fe2c5f68 Merge pull request #37 from drone/update_dockerfile
Use alpine package to install aws cl1 v1.18
2021-02-16 11:28:58 +05:30
Shubham Agrawal f006eebba3 addressed comments 2021-02-15 23:19:47 +05:30
Shubham Agrawal 937b910001 Using alpine package for aws cli 2021-02-10 17:11:16 +05:30
Shubham Agrawal 6647ff2107 Use pip to install aws cl1 v1.19.5 2021-02-10 16:06:42 +05:30
Shubham Agrawal a0b9eebc4f Merge pull request #36 from drone/aws_codecommit
Added AWS codecommit support using access & secret keys
2021-02-05 21:10:09 +05:30
Shubham Agrawal e82207b591 Fix UT 2021-02-05 20:39:03 +05:30
Shubham Agrawal 21eadbab5b Fixed test 2021-02-05 20:35:55 +05:30
Shubham Agrawal b3e3302ecf Added AWS codecommit support using access & secret keys 2021-02-05 20:02:25 +05:30
8 changed files with 72 additions and 15 deletions
+6 -1
View File
@@ -1,5 +1,10 @@
FROM alpine:3.12
RUN apk add --no-cache ca-certificates git git-lfs openssh curl perl
RUN apk add --no-cache ca-certificates git git-lfs openssh curl perl aws-cli sudo
ADD posix/* /usr/local/bin/
RUN adduser -g Drone -s /bin/sh -D -u 1000 drone
RUN echo 'drone ALL=(ALL) NOPASSWD:ALL' > /etc/sudoers.d/drone
USER drone:drone
RUN chmod -R 777 /home/drone
ENTRYPOINT ["/usr/local/bin/clone"]
+5 -1
View File
@@ -1,5 +1,9 @@
FROM arm32v6/alpine:3.12
RUN apk add --no-cache ca-certificates git git-lfs openssh curl perl
RUN apk add --no-cache ca-certificates git git-lfs openssh curl perl aws-cli sudo
ADD posix/* /usr/local/bin/
RUN adduser -g Drone -s /bin/sh -D -u 1000 drone
RUN echo 'drone ALL=(ALL) NOPASSWD:ALL' > /etc/sudoers.d/drone
USER drone:drone
RUN chmod -R 777 /home/drone
ENTRYPOINT ["/usr/local/bin/clone"]
+5 -1
View File
@@ -1,5 +1,9 @@
FROM arm32v6/alpine:3.12
RUN apk add --no-cache ca-certificates git git-lfs openssh curl perl
RUN apk add --no-cache ca-certificates git git-lfs openssh curl perl aws-cli sudo
ADD posix/* /usr/local/bin/
RUN adduser -g Drone -s /bin/sh -D -u 1000 drone
RUN echo 'drone ALL=(ALL) NOPASSWD:ALL' > /etc/sudoers.d/drone
USER drone:drone
RUN chmod -R 777 /home/drone
ENTRYPOINT ["/usr/local/bin/clone"]
+5 -1
View File
@@ -1,5 +1,9 @@
FROM arm64v8/alpine:3.12
RUN apk add --no-cache ca-certificates git git-lfs openssh curl perl
RUN apk add --no-cache ca-certificates git git-lfs openssh curl perl aws-cli sudo
ADD posix/* /usr/local/bin/
RUN adduser -g Drone -s /bin/sh -D -u 1000 drone
RUN echo 'drone ALL=(ALL) NOPASSWD:ALL' > /etc/sudoers.d/drone
USER drone:drone
RUN chmod -R 777 /home/drone
ENTRYPOINT ["/usr/local/bin/clone"]
+5 -1
View File
@@ -1,5 +1,9 @@
FROM arm32v6/alpine:3.12
RUN apk add --no-cache ca-certificates git git-lfs openssh curl perl
RUN apk add --no-cache ca-certificates git git-lfs openssh curl perl aws-cli sudo
ADD posix/* /usr/local/bin/
RUN adduser -g Drone -s /bin/sh -D -u 1000 drone
RUN echo 'drone ALL=(ALL) NOPASSWD:ALL' > /etc/sudoers.d/drone
USER drone:drone
RUN chmod -R 777 /home/drone
ENTRYPOINT ["/usr/local/bin/clone"]
+5 -1
View File
@@ -1,5 +1,9 @@
FROM arm64v8/alpine:3.12
RUN apk add --no-cache ca-certificates git git-lfs openssh curl perl
RUN apk add --no-cache ca-certificates git git-lfs openssh curl perl aws-cli sudo
ADD posix/* /usr/local/bin/
RUN adduser -g Drone -s /bin/sh -D -u 1000 drone
RUN echo 'drone ALL=(ALL) NOPASSWD:ALL' > /etc/sudoers.d/drone
USER drone:drone
RUN chmod -R 777 /home/drone
ENTRYPOINT ["/usr/local/bin/clone"]
+38 -6
View File
@@ -1,14 +1,34 @@
#!/bin/sh
if [[ ! -z "${DRONE_WORKSPACE}" ]]; then
if [[ -n "${CI}" ]]; then
sudo mkdir -p ${DRONE_WORKSPACE}
sudo chown drone:drone ${DRONE_WORKSPACE}
else
mkdir -p ${DRONE_WORKSPACE}
fi
cd ${DRONE_WORKSPACE}
fi
# we default home directory to /home/drone
if [ "$HOME" != "/home/drone" ]; then
export HOME=/home/drone
fi
# if the home directory does not exist it should
# be created.
if [ ! -d "${HOME}" ]; then
echo "HOME directory does not exist; creating ${HOME}"
mkdir -p ${HOME}
fi
# if the netrc enviornment variables exist, write
# the netrc file.
if [[ ! -z "${DRONE_NETRC_MACHINE}" ]]; then
cat <<EOF > /root/.netrc
cat <<EOF > ${HOME}/.netrc
machine ${DRONE_NETRC_MACHINE}
login ${DRONE_NETRC_USERNAME}
password ${DRONE_NETRC_PASSWORD}
@@ -20,15 +40,27 @@ fi
# known hosts file.
if [[ ! -z "${DRONE_SSH_KEY}" ]]; then
mkdir /root/.ssh
echo -n "$DRONE_SSH_KEY" > /root/.ssh/id_rsa
chmod 600 /root/.ssh/id_rsa
mkdir ${HOME}/.ssh
echo -n "$DRONE_SSH_KEY" > ${HOME}/.ssh/id_rsa
chmod 600 ${HOME}/.ssh/id_rsa
touch /root/.ssh/known_hosts
chmod 600 /root/.ssh/known_hosts
touch ${HOME}/.ssh/known_hosts
chmod 600 ${HOME}/.ssh/known_hosts
ssh-keyscan -H ${DRONE_NETRC_MACHINE} > /etc/ssh/ssh_known_hosts 2> /dev/null
fi
# AWS codecommit support using AWS access key & secret key
# Refer: https://docs.aws.amazon.com/codecommit/latest/userguide/setting-up-https-unixes.html
if [[ ! -z "$DRONE_AWS_ACCESS_KEY" ]]; then
aws configure set aws_access_key_id $DRONE_AWS_ACCESS_KEY
aws configure set aws_secret_access_key $DRONE_AWS_SECRET_KEY
aws configure set default.region $DRONE_AWS_REGION
git config --global credential.helper '!aws codecommit credential-helper $@'
git config --global credential.UseHttpPath true
fi
# configure git global behavior and parameters via the
# following environment variables:
+2 -2
View File
@@ -166,7 +166,7 @@ func TestPullRequest(t *testing.T) {
cmd.Dir = local
cmd.Env = []string{
fmt.Sprintf("DRONE_COMMIT_REF=%s", "refs/pull/14596/head"),
fmt.Sprintf("DRONE_COMMIT_BRANCH=%s", "master"),
fmt.Sprintf("DRONE_COMMIT_BRANCH=%s", "main"),
fmt.Sprintf("DRONE_COMMIT_SHA=%s", "26923a8f37933ccc23943de0d4ebd53908268582"),
fmt.Sprintf("DRONE_WORKSPACE=%s", local),
fmt.Sprintf("DRONE_REMOTE_URL=%s", remote),
@@ -195,7 +195,7 @@ func TestPullRequest(t *testing.T) {
t.Errorf("Want commit %s, got %s", want, got)
}
if want, got := "master", branch; got != want {
if want, got := "main", branch; got != want {
t.Errorf("Want branch %s, got %s", want, got)
}