Skip to content

Commit

Permalink
Added ici-uploader as a multi-arch image
Browse files Browse the repository at this point in the history
  • Loading branch information
alexiswl committed Sep 2, 2024
1 parent 5cc92f8 commit 1ae73fc
Show file tree
Hide file tree
Showing 7 changed files with 136 additions and 0 deletions.
2 changes: 2 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -1,2 +1,4 @@
*.rpm filter=lfs diff=lfs merge=lfs -text
*.bin filter=lfs diff=lfs merge=lfs -text
repositories/ici-uploader/4.0.3/ici-uploader.amd64.tar.gz filter=lfs diff=lfs merge=lfs -text
repositories/ici-uploader/4.0.3/ici-uploader.arm64.tar.gz filter=lfs diff=lfs merge=lfs -text
2 changes: 2 additions & 0 deletions .github/workflows/scatter_build_and_push_to_ghcrio.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,8 @@ on:
push:
branches:
- "main"
workflow_dispatch:


concurrency: image_builds

Expand Down
55 changes: 55 additions & 0 deletions repositories/ici-uploader/4.0.3/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
FROM alpine:3

# ARGS
# Target platform (linux/amd64, linux/arm64)
ARG TARGETPLATFORM

# For the ici-uploader
ARG ICI_HOME="/usr/local/share/ici-uploader"
# User args (we run from a non-root user)
ARG USER="ici_user"
ARG UID=1000
ARG GID=1000
ARG GROUP="ici_user"

# ENV
ENV ICI_HOME="${ICI_HOME}"

# RUN
# Install Java
RUN apk update && \
apk add \
openjdk11 \
tar \
bash && \
mkdir -p "$(dirname "${ICI_HOME}")"

# Add and extract tarball
ADD "ici-uploader.${TARGETPLATFORM#linux/}.tar.gz" "${ICI_HOME%ici-uploader}"
ADD "ici-uploader.sh" "/usr/local/bin/ici-uploader"

# Change permissions
RUN chmod a+r "${ICI_HOME}/" && \
chmod a+x "${ICI_HOME}/ici-uploader" && \
chmod a+x "/usr/local/bin/ici-uploader"

# Add a non-root user
RUN addgroup \
--system \
--gid "${GID}" \
"${GROUP}" && \
adduser \
--system \
--disabled-password \
--ingroup "${GROUP}" \
--uid "${UID}" \
"$USER"

# Change ownership
USER "$USER"

# Add a softlink from the user home to the ici-uploader
RUN mkdir -p "/home/${USER}/.illumina/" && \
ln -s "${ICI_HOME}" "/home/${USER}/.illumina/ici-uploader"

CMD [ "ici-uploader" ]
64 changes: 64 additions & 0 deletions repositories/ici-uploader/4.0.3/Readme.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
# Alpine-rsync

## Version 3.3.0

## Package link
[docker-who/alpine-rsync](https://github.com/umccr/docker-who/pkgs/container/alpine-rsync)

## Platforms
* linux/amd64
* linux/arm64

### Usage

```bash
docker pull ghcr.io/umccr/ici-uploader:4.0.3
```

### Description
Run the ici-uploader commandline tool without needing to worry about daemons, or even installing this thing!!

### Example
```bash
docker run --rm -it \
--workdir "$PWD" \
--volume "$PWD:$PWD" \
ici-uploader:4.0.3 \
ici-uploader help
```

Gives

```
Usage: ici-uploader.jar [-hV] [--verbose] [--configFile=<configFile>] [COMMAND]
ICI Command-line Interface (Uploader) for analysis, and file operations
--configFile, --config-file=<configFile>
[Optional] Path to the uploader configuration file. Defaults to ~/.illumina/ici-uploader/uploader-config.json.
-h, --help Show this help message and exit.
-V, --version Print version information and exit.
--verbose [Optional] Turn on INFO logging.
Commands:
help Displays help information about the specified command
configure Configure ici-uploader tool
case-data Set the metadata for the case via ici-uploader tool
analyses, analysis Upload analyses into Illumina Connected Insights (ICI)
logs, ici-logs Get ICI logs for Illumina Connected Insights (ICI)
files List or download files
```

## Configuration File

The only way to get this is to actually download the installer from the ICI site, this will provide you with the following keys

```json
[ {
"domain" : null,
"workgroup" : null,
"url" : null,
"apiKey" : null,
"project" : null,
"productKey" : null,
"isCloud" : null,
"isActive" : null
} ]
```
3 changes: 3 additions & 0 deletions repositories/ici-uploader/4.0.3/ici-uploader.amd64.tar.gz
Git LFS file not shown
3 changes: 3 additions & 0 deletions repositories/ici-uploader/4.0.3/ici-uploader.arm64.tar.gz
Git LFS file not shown
7 changes: 7 additions & 0 deletions repositories/ici-uploader/4.0.3/ici-uploader.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
#!/usr/bin/env bash

# Start the daemon
"${ICI_HOME}/ici-uploader" start-daemon 1>/dev/null 2>&1

# Run the ici-uploader command
"${ICI_HOME}/ici-uploader" "${@:1}"

0 comments on commit 1ae73fc

Please sign in to comment.