Git Product home page Git Product logo

aws-robomaker-bundle-support-library's Introduction

Build Status Go Report Card GoDoc

AWS Robomaker Bundle Support Library

This API is currently under active development and should not be considered stable.

A Library in Go that supports download and extraction of colcon-bundle format. https://github.com/colcon/colcon-bundle

CLI

We provide a rudimentary CLI to expose the base functionality of this library. With GO111MODULE=on you can run it by executing:

go run github.com/aws-robotics/aws-robomaker-bundle-support-library/cmd/cli

Usage:

./cli --bundle my_bundle.tar

--bundle - Path to bundle file
--prefix - Prefix to put onto the source command. This is generally used when the CLI is run
on a host, but the source command will run inside a Docker container. If you have your cache 
directory mounted as '/cache' in the Docker container you should set prefix to '/cache'.
--cache - Path to store extracted bundle contents (Default: ./cache)

Developing

In order to build and run this package from source you should execute the following (Golang 1.16+ recommended):

source environment.sh
go get github.com/mitchellh/gox
go get github.com/golang/mock/gomock
go install github.com/golang/mock/mockgen
go build ./...
go generate ./...
go test -v -race ./...

environment.sh is used to set GOBIN so that mockgen installs properly using Go modules.

NOTE: If you are using Golang version < 1.16 then you may need to set the environment variable GO111MODULES=on.

License

This library is licensed under the Apache 2.0 License.

aws-robomaker-bundle-support-library's People

Contributors

jchionh avatar murphm8 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

aws-robomaker-bundle-support-library's Issues

Use marker to ensure extraction of overlay was completed in CLI

If I start extraction using the CLI, but then my program crashes halfway through I will have an incomplete directory that is named correctly. The CLI will think the layer is already cached. We should do something to checksum or otherwise validate the cache is coherent between runs.

Provide metadata only mode for cli

Sometimes I just want to get the source command for a bundle and I don't want to have to fully extract it. Other times, maybe the bundle is fully extracted and I've deleted it and I only have the cache. In both cases, I should be able to generate a source command.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.