cf-extensions

command module
v0.9.0 Latest Latest
Warning

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

Go to latest
Published: Aug 16, 2017 License: Apache-2.0 Imports: 5 Imported by: 0

README

CF-Extensions

The cloudfoundry-incubator/cf-extensions is a Golang GitHub bot that runs periodically as a CloudFoundry Golang app and updates the data and docs directory of this repository.

The data folder contains the JSON databases of all discovered extensions (tracked and untracked) as well as the official list of extensions that are accepted and have statuses.

The docs folder contains generated docs for the catalog of projects. The following diagram summarizes the work done by the cf-extensions bot each time it runs.

CF-Extensions bot workflow

The resulting summary list of extensions created in the docs folder is accessible from either pointing your browser to: cloudfoundry-incubator/cf-extensions/docs/index.md or eventually from ext.cloudfoundry.org.

Getting Started: a primer

In order to be listed as a CF-Extensions project, instigators need to follow the following steps:

  1. Make their repos public.
  2. If the repo is not part of one of the the CFF’s supported organizations, then move it to github.com/cloudfoundry-community.
  3. Modify their GitHub topics list to include cf-extensions.
  4. Next time the cf-extensions bot runs it will submit an issue to your repo with instructions to create a .cf-extensions JSON metadata file and what values to include.

Once you are ready to submit your proposal extension to the CF-Extensions PMC then follow these additional steps:

  1. Read through the CF-Extensions process [4].
  2. Create a CF-Extensions proposal following the template [3].
  3. Submit proposal to cf-dev@lists.cloudfoundry.org.
  4. Take part in the monthly CF-Extensions PMC calls [5].

During all these steps, you are welcome to contact cf-extensions-pmc@cloudfoundry.org if you have any questions. Once a proposal is submitted and accepted, it’s status will move from “Unknown” to “Proposed” and the project will automatically move from the untracked database to the tracked database and be added to the catalog of managed CF-Extensions projects.

It’s important to note that the CF-Extensions process is self-driven. That is, each proposer/instigator can chose to move projects through the process as fast (within some limits) or as slow as they chose. A project can also be retracted at any time.

Conclusion: how to contribute and future

The CF-Extensions GitHub bot was created out of the need to reduce this logistical burden in keeping lists of GitHub projects in syncing with the community. By requiring extensions instigators to tag (add topic in GitHub) their projects and provide a little bit of metadata, we are able to dynamically construct an accurate list of all extensions to CloudFoundry and organize this list.

Some future features may include but are not limited to:

  1. Providing different views of the tracked and untracked projects databases.
  2. Expanding the search of the cf-extensions bot to all organizations that are part of the CFF.
  3. Generating emails to cf-dev mailing list to communicate new proposed extensions to the community along with when their statuses have changed.

If you would like to participate in maintaining and improving the CF-Extensions GitHub bot project [1], which itself is added as an extension (tool category with distributed commit), we welcome you to clone and peruse the code. All pull requests as well as issues and suggestions and bug reports are encouraged.

References

  1. https://github.com/cloudfoundry-incubator/cf-extensions
  2. CF-Extensions Projects Lists Docs
  3. CF-Extensions Template
  4. CF-Extensions Process
  5. CF-Extensions Notes
  6. https://developer.github.com/v3/
  7. https://github.com/google/go-github/

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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