Skip to content

Latest commit

History

50 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

ubuild

ubuild is our release tool. It allows you to:

Generate a release
Compile programs
Build containers
Push those containers to a remote registry

Everything in one command.

Install

go get github.com/upfluence/ubuild

Prerequisite

Before running ubuild you must export a GITHUB_TOKEN and set RELEASE to true into your environment and be logged in into a docker hub account with access to upfluence image registry.

Configuration

type: <lang> go, rb, py, frontendverbose: <true/false>repository: <github_path># needed only for compiled languagecompiler:
binaries:
- path: <path_to_entrypp>dist:
CGO: args: # map of arguments to pass to the compilerkey: val... docker:
dockerfile: <path_to_dockerfile> # Dockerfile by defaultimage: <image_name>tags: # additional tagskey: val...deployer:
url:
envs:
key: val...bump_strategies:
<branch>: <strategy> # valid strategies are "bump_patch", "bump_rc"

For example this configuration will build an image based on a python package, update the release of upfluence/ner_analyser and update to the docker image named "ner-analyser".

type: pyverbose: truerepository: <org>/<repository>docker:
image: "<image_name>"

Github Action

The sensitive environment variable should be fetched from the project secrets.

Example: - run: docker images

build:
name: Buildruns-on: ubuntu-latestneeds: teststeps:
- name: Checkoutuses: actions/checkout@v2
- name: Install ubuildrun: | curl -sSL https://github.com/upfluence/ubuild/releases/download/v0.2.0/ubuild-linux-amd64-0.2.0 > ~/go/bin/ubuild chmod +x ~/go/bin/ubuild - name: Buildrun: | echo "$DOCKER_PASSWORD" | docker login -u "$DOCKER_USERNAME" --password-stdin ubuildenv:
DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}RELEASE: trueGITHUB_TOKEN: ${{ secrets.PAT_TOKEN }}

About

Docker image utility

Topics

Resources

Stars

0 stars

Watchers

11 watching

Forks

Releases

Packages

Used by

Contributors

Languages