Giter VIP home page Giter VIP logo

feedstock-creation-action's Introduction

Feedstock Creation Action

The purpose of feedstock-creation-action is to take the meta.yaml from a successful PR into staged-recipes and create a Feedstock repository for the administration of pangeo-forge Recipes within the Feedstock

This Action creates a Feedstock repository named <id>-feedstock where <id> is the top level id entry in meta.yaml. This value must be unique, if a repository already exists, the Action will terminate.

Inputs

path_to_meta_yaml

Required - The path to the meta.yaml file for the Recipes, relative to the root of the repository

ENV

GITHUB_TOKEN

Required - A GitHub Personal Access Token to use for authentication with GitHub to create repositories

Example Usage

name: CI
on: [push]

jobs:
  create-feedstock:
    runs-on: ubuntu-20.04
    steps:
      - uses: actions/checkout@v2

      - name: Create Feedstock repository
        uses: pangeo-forge/feedstock-creation-action@v1
        with:
          path_to_meta_yaml: "a/path/to/meta.yaml"
        env:
          GITHUB_TOKEN: ${{ secrets.A_GITHUB_TOKEN }}

Development

To develop on this Action, you will need the following installed:

.env

A .env file is expected at the root of the repository with the following contents:

GITHUB_TOKEN=<a-github-personal-access-token>

Testing

To test the Action, an example directory example-feedstock/ has been provided that mimics a structure you might get in a PR for staged-recipes.

To create a feedstock repository with this test data, run:

$ make feedstock

This will create a Feedstock repository called a-test-bunch-of-recipes-feedstock - Make sure you delete this once you're done!

If you want to make multiple Feedstocks, just change the top level id entry in example-feedstock/meta.yaml.

feedstock-creation-action's People

Contributors

sharkinsspatial avatar ciaransweet avatar

Watchers

James Cloos avatar Ryan Abernathey avatar Tom Augspurger avatar

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.