diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile index 425c1539f7fb854154cc63095cd3f3d1ae5be261..8fcb253daf78f3fe65c13f54eab192590b56f170 100644 --- a/.devcontainer/Dockerfile +++ b/.devcontainer/Dockerfile @@ -20,7 +20,7 @@ RUN apt-get update \ && apt-get -y install --no-install-recommends git procps lsb-release \ # # Install project-specific tools - && apt-get -y install --no-install-recommends ca-certificates shellcheck wget \ + && apt-get -y install --no-install-recommends ca-certificates wget \ # # Create a non-root user to use if preferred - see https://aka.ms/vscode-remote/containers/non-root-user. && groupadd --gid $USER_GID $USERNAME \ @@ -40,5 +40,10 @@ ARG HADOLINT_VERSION=v1.17.1 RUN wget -O /usr/local/bin/hadolint https://github.com/hadolint/hadolint/releases/download/${HADOLINT_VERSION}/hadolint-Linux-x86_64 \ && chmod +x /usr/local/bin/hadolint +# Configure shellcheck +ARG SHELLCHECK_VERSION=latest +RUN wget -O /usr/local/bin/shellcheck https://shellcheck.storage.googleapis.com/shellcheck-${SHELLCHECK_VERSION}.linux.x86_64.tar.xz \ + && chmod +x /usr/local/bin/shellcheck + # Switch back to dialog for any ad-hoc use of apt-get ENV DEBIAN_FRONTEND='' diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json index 98f075bbe132ef9cd7668e6ed9cc0088e0090698..365a86cb404ee268147f80b704688c728ad3921d 100644 --- a/.devcontainer/devcontainer.json +++ b/.devcontainer/devcontainer.json @@ -28,6 +28,6 @@ "extensions": [ "exiasr.hadolint", "ms-azuretools.vscode-docker", - "timonwong.shellcheck", - ], + "timonwong.shellcheck" + ] } \ No newline at end of file diff --git a/Dockerfile b/Dockerfile index e37924eecd4227e2dd2b7f672d765d46513939da..d27c2d0adff38e54467e09d4cb2ece4c30e38033 100644 --- a/Dockerfile +++ b/Dockerfile @@ -19,7 +19,7 @@ RUN apt-get update \ && apt-get clean -y \ && rm -rf /var/lib/apt/lists/* -# Install Sonar Scanner CLI +# Configure Sonar Scanner CLI ARG SONAR_SCANNER_CLI_VERSION=4.0.0.1744 RUN wget -O sonar-scanner-cli.zip https://binaries.sonarsource.com/Distribution/sonar-scanner-cli/sonar-scanner-cli-$SONAR_SCANNER_CLI_VERSION-linux.zip \ && unzip sonar-scanner-cli.zip -d /opt \ @@ -27,6 +27,11 @@ RUN wget -O sonar-scanner-cli.zip https://binaries.sonarsource.com/Distribution/ && chmod +x /opt/sonar-scanner-$SONAR_SCANNER_CLI_VERSION-linux/bin/sonar-scanner \ && ln -s /opt/sonar-scanner-$SONAR_SCANNER_CLI_VERSION-linux/bin/sonar-scanner /usr/local/bin/sonar-scanner +# Configure shellcheck +ARG SHELLCHECK_VERSION=latest +RUN wget -O /usr/local/bin/shellcheck https://shellcheck.storage.googleapis.com/shellcheck-${SHELLCHECK_VERSION}.linux.x86_64.tar.xz \ + && chmod +x /usr/local/bin/shellcheck + # Switch back to dialog for any ad-hoc use of apt-get ENV DEBIAN_FRONTEND='' @@ -43,7 +48,7 @@ CMD ["/bin/bash"] ## It is also possible to pass other metadata values via build arguments. ARG IMAGE_CREATED="" ARG IMAGE_SOURCE="https://gitlab.cs.ui.ac.id/pmpl/sonar-scanner-cli-image" -ARG IMAGE_VERSION="" +ARG IMAGE_VERSION=${SONAR_SCANNER_CLI_VERSION} ARG IMAGE_REVISION="" ARG IMAGE_VENDOR="Faculty of Computer Science Universitas Indonesia" ARG IMAGE_TITLE="Sonar Scanner CLI Image" diff --git a/build.sh b/build.sh index ecb16b512e40cab80e27bc13ac04f7a6aef6d3d3..a0898c6ca4e09887d89e656a94f975aea4ac8998 100644 --- a/build.sh +++ b/build.sh @@ -24,19 +24,12 @@ if ! [ -n "$1" ]; then exit 1 fi -if ! [ -n "$2" ]; then - echo "Error: missing 2nd argument of $0, i.e. version of the container image." >&2 - exit 1 -fi - IMAGE_NAMESPACE="$1" -IMAGE_VERSION="$2" docker build \ --build-arg=IMAGE_CREATED="$(date --utc --rfc-3339=seconds)" \ - --build-arg=IMAGE_VERSION="${IMAGE_VERSION}" \ --build-arg=IMAGE_REVISION="$(git show --pretty=oneline | tac | tail -n 1 | awk '{print $1}')" \ - --tag="${IMAGE_NAMESPACE}/sonar-scanner-cli:${IMAGE_VERSION}" \ + --tag="${IMAGE_NAMESPACE}/sonar-scanner-cli:latest" \ . exit 0