GithubHelp home page GithubHelp logo

filipkroupa / che-devfile-registry Goto Github PK

View Code? Open in Web Editor NEW

This project forked from eclipse-che/che-devfile-registry

0.0 1.0 0.0 587 KB

License: Eclipse Public License 2.0

Dockerfile 11.93% Shell 87.87% Smarty 0.20%

che-devfile-registry's Introduction

Next Build Status Release Build Status

Eclipse Che devfile registry

This repository holds ready-to-use Devfiles for different languages and technologies.

The contents of the devfile registry are published to GitHub pages on every commit. Furthermore, every version is also published to GitHub pages at release time. As an example the 7.31.2 version of the devfile registry was published here.

All published versions of the devfile registry explicitly use plugins from the che-plugin-registry by specifying the registryUrl field.

Build registry container image

This repository contains a build.sh script at its root that can be used to build the registry:

Usage: ./build.sh [OPTIONS]
Options:
    --help
        Print this message.
    --tag, -t [TAG]
        Docker image tag to be used for image; default: 'next'
    --registry, -r [REGISTRY]
        Docker registry to be used for image; default 'quay.io'
    --organization, -o [ORGANIZATION]
        Docker image organization to be used for image; default: 'eclipse'
    --offline
        Build offline version of registry, with all artifacts included
        cached in the registry; disabled by default.
    --rhel
        Build using the rhel.Dockerfile (UBI images) instead of default

By default, the built registry will be tagged quay.io/eclipse/che-devfile-registry:next, and will be built with offline mode disabled.

This script listens to the BUILDER variable, and will use the tool specified there to build the image. For example:

BUILDER=buildah ./build.sh

will force the build to use buildah. If BUILDER is not specified, the script will try to use podman by default. If podman is not installed, then buildah will be chosen. If neither podman nor buildah are installed, the script will finally try to build with docker.

Note that the Dockerfiles in this repository utilize multi-stage builds, so Docker version 17.05 or higher is required.

Offline and airgapped registry images

Using the --offline option in build.sh will build the registry to contain zip files for all projects referenced, which is useful for running Che in clusters that may not have access to GitHub. When building the offline registry, the docker build will

  1. Clone all git projects referenced in devfiles, and
  2. git archive them in the /resources path, making them available to workspaces.

When deploying this offline registry, it is necessary to set the environment variable CHE_DEVFILE_REGISTRY_URL to the URL of the route/endpoint that exposes the devfile registry, as devfiles need to be rewritten to point to internally hosted zip files.

Deploy the registry to OpenShift

You can deploy the registry to Openshift as follows:

  oc new-app -f deploy/openshift/che-devfile-registry.yaml \
             -p IMAGE="quay.io/eclipse/che-devfile-registry" \
             -p IMAGE_TAG="next" \
             -p PULL_POLICY="Always"

Kubernetes

You can deploy Che devfile registry on Kubernetes using helm. For example if you want to deploy it in the namespace kube-che and you are using minikube you can use the following command.

NAMESPACE="kube-che"
DOMAIN="$(minikube ip).nip.io"
helm upgrade --install che-devfile-registry \
    --debug \
    --namespace ${NAMESPACE} \
    --set global.ingressDomain=${DOMAIN} \
    ./deploy/kubernetes/che-devfile-registry/

You can use the following command to uninstall it.

helm delete --purge che-devfile-registry

Run the registry

docker run -it --rm -p 8080:8080 quay.io/eclipse/che-devfile-registry:next

CI

Visit GitHub Actions Workflows to see all associated CI workflows.

License

Che is open sourced under the Eclipse Public License 2.0.

che-devfile-registry's People

Contributors

amisevsk avatar mkuznyetsov avatar nickboldt avatar ericwill avatar ibuziuk avatar svor avatar sleshchenko avatar sunix avatar che-bot avatar benoitf avatar andrienkoaleksandr avatar monaka avatar tolusha avatar vitaliy-guliy avatar l0rd avatar filipkroupa avatar metlos avatar apupier avatar sparkoo avatar tsmaeder avatar jpinkney avatar flacatus avatar sideeffffect avatar screwtsw avatar prabhav-thali avatar gattytto avatar cccs-eric avatar bivasda1 avatar skabashnyuk avatar rhopp avatar

Watchers

James Cloos 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.