Git Product home page Git Product logo

drupal-operator's Introduction

Drupal Operator

This is a very early working POC for development of an drupal Ansible operator, feedback is welcomed!

Install Operator

kubectl apply -f deploy/

Create a Drupal instance

Once the operator is installed in a namespace you can create Drupal resources.

apiVersion: drupal.org/v1alpha1
kind: Drupal
metadata:
  name: example-drupal
spec:
  version: 8.6

This will automatically trigger the operator to run the ansible playbook and deploy a new Drupal :)

drupal-operator's People

Contributors

thom8 avatar

Stargazers

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

Watchers

 avatar  avatar  avatar  avatar

drupal-operator's Issues

Add to OperatorHub.io?

https://operatorhub.io seems to be an interesting operator directory... but it's still so early in this game, who knows what will be the most official-ish way of discovering operators (besides Google search, which is how I currently discover them :P ).

Can't get Operator to start on Minikube / 1.15.0

I get the following errors for the drupal-operator pod, which is stuck in a CrashLoopBackOff:

{
  "level": "error",
  "ts": 1563824078.4568,
  "logger": "kubebuilder.source",
  "msg": "if kind is a CRD, it should be installed before calling Start",
  "kind": "Drupal.drupal.org",
  "error": "no matches for kind \"Drupal\" in version \"drupal.org\/v1alpha1\"",
  "stacktrace": "github.com\/operator-framework\/operator-sdk\/vendor\/github.com\/go-logr\/zapr.(*zapLogger).Error\n\tsrc\/github.com\/operator-framework\/operator-sdk\/vendor\/github.com\/go-logr\/zapr\/zapr.go:128\ngithub.com\/operator-framework\/operator-sdk\/vendor\/sigs.k8s.io\/controller-runtime\/pkg\/source.(*Kind).Start\n\tsrc\/github.com\/operator-framework\/operator-sdk\/vendor\/sigs.k8s.io\/controller-runtime\/pkg\/source\/source.go:89\ngithub.com\/operator-framework\/operator-sdk\/vendor\/sigs.k8s.io\/controller-runtime\/pkg\/internal\/controller.(*Controller).Watch\n\tsrc\/github.com\/operator-framework\/operator-sdk\/vendor\/sigs.k8s.io\/controller-runtime\/pkg\/internal\/controller\/controller.go:122\ngithub.com\/operator-framework\/operator-sdk\/pkg\/ansible\/controller.Add\n\tsrc\/github.com\/operator-framework\/operator-sdk\/pkg\/ansible\/controller\/controller.go:93\ngithub.com\/operator-framework\/operator-sdk\/pkg\/ansible\/operator.Run\n\tsrc\/github.com\/operator-framework\/operator-sdk\/pkg\/ansible\/operator\/operator.go:55"
}

and:

{
  "level": "error",
  "ts": 1563824078.4575,
  "logger": "ansible-controller",
  "msg": "",
  "error": "no matches for kind \"Drupal\" in version \"drupal.org\/v1alpha1\"",
  "stacktrace": "github.com\/operator-framework\/operator-sdk\/vendor\/github.com\/go-logr\/zapr.(*zapLogger).Error\n\tsrc\/github.com\/operator-framework\/operator-sdk\/vendor\/github.com\/go-logr\/zapr\/zapr.go:128\ngithub.com\/operator-framework\/operator-sdk\/pkg\/ansible\/controller.Add\n\tsrc\/github.com\/operator-framework\/operator-sdk\/pkg\/ansible\/controller\/controller.go:94\ngithub.com\/operator-framework\/operator-sdk\/pkg\/ansible\/operator.Run\n\tsrc\/github.com\/operator-framework\/operator-sdk\/pkg\/ansible\/operator\/operator.go:55"
}

Running Minikube 1.2.0 locally, with Kubernetes 1.15.0.

More detailed README?

Very interested in this project; would you consider adding some more details to the README, for example:

  • If this is based on Ansible Operator, mention that and link to it (I presume it is?)
  • Details on how to customize it and usage instructions

Example Drupal definition results in failure due to undefined 'git' variable

When I install this operator in my local cluster using the updated directions in #3, the Drupal instance example-drupal never gets created; instead, the operator keeps trying to build the instance and outputs the following playbook error:

TASK [Drupal] ******************************************************************

task path: /opt/ansible/playbook.yml:61
fatal: [localhost]: FAILED! => {\"msg\": \"The task includes an option with an undefined variable. The error was: 'git' is undefined

The error appears to have been in '/opt/ansible/playbook.yml': line 61, column 5, but may
be elsewhere in the file depending on the exact syntax problem.

The offending line appears to be:

  - name: Drupal
    ^ here

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.