shore

module
v0.0.13 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 10, 2023 License: Apache-2.0

README

Shore

Shore (verb) is a tool used to develop deployment pipelines for different pipeline based products like Spinnaker.

Installing shore

As a binary
Released
  1. Shore released binaries can be found in archived format at shore's github releases page: https://github.com/Autodesk/shore/releases
  2. To download the binary relevant for you platform click on the file name and save the file to the disk.
  3. Un-archive, e.g. for tar.gz for Mac OS:
cd ~/Downloads
tar -xzf shore_0.0.2_Darwin_x86_64.tar.gz -C /usr/local/bin/
chmod +x /usr/local/bin/shore
shore -h
Current/Nightly build
As a docker image
  1. Shore released docker images links can be found at shore's github releases page: https://github.com/Autodesk/shore/releases
docker pull ***REMOVED***/shore/shore:v0.0.2
docker run ***REMOVED***/shore/shore:v0.0.2 -h

Building Shore

git clone git@github.com:Autodesk/shore.git

go mod download
go mod vendor
go build -o shore cmd/shore/shore.go
./shore
Reading/Rendering files

JSONNET/{INSERT LANGUAGE} files will read from ./{project_path}/main.pipeline.jsonnet.

Only top level files that generate a Pipeline object will be rendered.

{project_path}/main.pipeline.jsonnet # RENDERS A PIPELINE

# ---- DOES NOT RENDER A PIPELINE ----
{project_path}/pipelines/MYSUBDIRECTORY/not-really-main.jsonnet

Pipeline objects can be identified using a validation method that conforms to one of the supported backends.

Saving to a backend

The rendered output is stored in Memory and is passed on to the correct backend service provider.

As of today (30 Mar 2021) only Spinnaker is supported as a backend service.

The framework will not validate the input before pushing to a backend as combinations may be very tricky to validate.

Instead the framework will try to provide known good values for a specific backend configuration (I.E. Spinnaker)

Tools

The framework will provide a few packages and functions for customer's to consume.

These packages will be made available through the common resources and identified at runtime.

To get these common resources, we recommend using Jsonnet-Bundler

Release

Directories

Path Synopsis
cmd
internal
retry
* Package retry
* Package retry
pkg
backend/spinnaker
Package spinnaker - a `shore` backend implementation for Spinnaker APIs
Package spinnaker - a `shore` backend implementation for Spinnaker APIs

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL