Skip to content

Commit

Permalink
init commit
Browse files Browse the repository at this point in the history
  • Loading branch information
lionelvillard committed Nov 29, 2018
0 parents commit 5ecf1b9
Show file tree
Hide file tree
Showing 151 changed files with 20,845 additions and 0 deletions.
8 changes: 8 additions & 0 deletions .gitignore
@@ -0,0 +1,8 @@
bin
vendor
.DS_Store
dist
_build
.history
old
cover.out
44 changes: 44 additions & 0 deletions .goreleaser.yml
@@ -0,0 +1,44 @@
# This is an example goreleaser.yaml file with some sane defaults.
# Make sure to check the documentation at http://goreleaser.com
builds:
- main: ./cmd/manager/main.go
binary: manager
env:
- CGO_ENABLED=0
goos:
- linux
- windows
- darwin
goarch:
- amd64
checksum:
name_template: 'checksums.txt'
snapshot:
name_template: "{{ .Tag }}-next"
changelog:
sort: asc
filters:
exclude:
- '^docs:'
- '^test:'
release:
github:
owner: ibm
name: openwhisk-operator

# If set to true, will not auto-publish the release.
# Default is false.
draft: false

# If set to true, will mark the release as not ready for production.
# Default is false.
prerelease: true

# You can change the name of the GitHub release.
# Default is ``
name_template: "v{{.Version}}"

# You can disable this pipe in order to not upload any artifacts to
# GitHub.
# Defaults to false.
disable: false
42 changes: 42 additions & 0 deletions .travis.yml
@@ -0,0 +1,42 @@
language: go
go:
- "1.11.x"
dist: trusty
sudo: required
services:
- docker
env:
- IBMCLOUD_VERSION_CHECK=false KB_VERSION=1.0.5

go_import_path: github.com/ibm/openwhisk-operator

before_install:
- if [ "${TRAVIS_PULL_REQUEST}" = "true" ]; then ./tools/travis/ow-setup.sh; fi
- curl https://raw.githubusercontent.com/golang/dep/master/install.sh | sh
- curl -SL "https://github.com/kubernetes-sigs/kubebuilder/releases/download/v${KB_VERSION}/kubebuilder_${KB_VERSION}_linux_amd64.tar.gz" | tar xz
- export KUBEBUILDER_ASSETS=$TRAVIS_BUILD_DIR/kubebuilder_${KB_VERSION}_linux_amd64/bin
- $KUBEBUILDER_ASSETS/kubebuilder version
- ./tools/travis/bx-install.sh

install:
- go get -v github.com/onsi/ginkgo/ginkgo
- dep ensure -v
- if [ "${TRAVIS_PULL_REQUEST}" = "true" ]; then ./tools/travis/ow-build.sh && ./tools/travis/ow-deploy.sh; fi

before_script:
- if [ "${TRAVIS_PULL_REQUEST}" = "false" ]; then ./tools/travis/bx-setup.sh; fi

script:
- make test

deploy:
- provider: script
skip_cleanup: true
script: bash tools/travis/docker.sh
on:
branch: "master"
- provider: script
skip_cleanup: true
script: bash tools/travis/docker.sh
on:
tags: true
56 changes: 56 additions & 0 deletions CLA-CORPORATE.md
@@ -0,0 +1,56 @@
# International Business Machines, Inc. (IBM)
### Software Grant and Corporate Contributor License Agreement ("Agreement")

https://github.com/ibm/kube-operator-openwhisk

Thank you for your interest in IBM’s Seed project ("the Project").

In order to clarify the intellectual property license granted with Contributions from any person or entity, IBM must have a Contributor License Agreement (CLA) on file that has been signed by each Contributor, indicating agreement to the license terms below. This license is for your protection as a Contributor as well as the protection of IBM and its users; it does not change your rights to use your own Contributions for any other purpose.

This version of the Agreement allows an entity (the "Corporation") to submit Contributions to the Project, to authorize Contributions submitted by its designated employees to the Project, and to grant copyright and patent licenses thereto.

If you have not already done so, please complete and sign, then scan and email a pdf file of this Agreement to villard@us.ibm.com. If necessary, send an original signed agreement to:

IBM Corporation, 1101 Kitchawan Rd Route 134 / PO Box 218 Yorktown Heights, NY 10598 Attn: Olivier Tardieu

Please read this document carefully before signing and keep a copy for your records.

Corporation name:
Corporation address:
Point of Contact:
E-Mail:
Telephone:

You accept and agree to the following terms and conditions for Your present and future Contributions submitted to the Project. Except for the license granted herein to IBM and recipients of software distributed by IBM, You reserve all right, title, and interest in and to Your Contributions.

1. Definitions.
"You" (or "Your") shall mean the copyright owner or legal entity authorized by the copyright owner that is making this Agreement with IBM. For legal entities, the entity making a Contribution and all other entities that control, are controlled by, or are under common control with that entity are considered to be a single Contributor. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity.
"Contribution" shall mean the code, documentation or other original works of authorship expressly identified in Schedule B, as well as any original work of authorship, including any modifications or additions to an existing work, that is intentionally submitted by You to IBM for inclusion in, or documentation of, the Project managed by IBM (the "Work"). For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to IBM or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, IBM for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by You as "Not a Contribution."

2. Grant of Copyright License. Subject to the terms and conditions of this Agreement, You hereby grant to IBM and to recipients of software distributed by IBM a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare derivative works of, publicly display, publicly perform, sublicense, and distribute Your Contributions and such derivative works.

3. Grant of Patent License. Subject to the terms and conditions of this Agreement, You hereby grant to IBM and to recipients of software distributed by IBM a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by You that are necessarily infringed by Your Contribution(s) alone or by combination of Your Contribution(s) with the Work to which such Contribution(s) were submitted. If any entity institutes patent litigation against You or any other entity (including a cross-claim or counterclaim in a lawsuit) alleging that your Contribution, or the Work to which you have contributed, constitutes direct or contributory patent infringement, then any patent licenses granted to that entity under this Agreement for that Contribution or Work shall terminate as of the date such litigation is filed.

4. You represent that You are legally entitled to grant the above license. You represent further that each employee of the Corporation designated on Schedule A below (or in a subsequent written modification to that Schedule) is authorized to submit Contributions on behalf of the Corporation.

5. You represent that each of Your Contributions is Your original creation (see section 7 for submissions on behalf of others).

6. You are not expected to provide support for Your Contributions, except to the extent You desire to provide support. You may provide support for free, for a fee, or not at all. Unless required by applicable law or agreed to in writing, You provide Your Contributions on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE.

7. Should You wish to submit work that is not Your original creation, You may submit it to IBM separately from any Contribution, identifying the complete details of its source and of any license or other restriction (including, but not limited to, related patents, trademarks, and license agreements) of which you are personally aware, and conspicuously marking the work as "Submitted on behalf of a third-party: [named here]".

8. It is your responsibility to notify IBM when any change is required to the list of designated employees authorized to submit Contributions on behalf of the Corporation, or to the Corporation's Point of Contact with IBM.

Please sign and date: ______________________________________________________________

Title:
Corporation:

Schedule A

[Initial list of designated employees. NB: authorization is not tied to particular Contributions.]

Schedule B

[Identification of optional concurrent software grant. Would be left blank or omitted if there is no concurrent software grant.]

44 changes: 44 additions & 0 deletions CLA-INDIVIDUAL.md
@@ -0,0 +1,44 @@
# International Business Machines, Inc. (IBM)
### Individual Contributor License Agreement ("Agreement")

https://github.com/IBM/kube-operator-openwhisk/

Thank you for your interest in the Seed project ("the Project").

In order to clarify the intellectual property license granted with Contributions from any person or entity, IBM must have a Contributor License Agreement ("CLA") on file that has been signed by each Contributor, indicating agreement to the license terms below. This license is for your protection as a Contributor as well as the protection of IBM and its customers; it does not change your rights to use your own Contributions for any other purpose.

If you have not already done so, please complete and sign, then scan and email a pdf file of this Agreement to villard@us.ibm.com. If necessary, send an original signed agreement to:

IBM Corporation, 1101 Kitchawan Rd Route 134 / PO Box 218 Yorktown Heights, NY 10598 Attn: Olivier Tardieu

Please read this document carefully before signing and keep a copy for your records.

Full name:
GitHub Username:
Address:
Country:
E-Mail:
Telephone:

You accept and agree to the following terms and conditions for Your present and future Contributions submitted to the Project. Except for the license granted herein to IBM and recipients of software distributed by IBM, You reserve all right, title, and interest in and to Your Contributions.

1. Definitions.
"You" (or "Your") shall mean the copyright owner or legal entity authorized by the copyright owner that is making this Agreement with IBM. For legal entities, the entity making a Contribution and all other entities that control, are controlled by, or are under common control with that entity are considered to be a single Contributor. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity.
"Contribution" shall mean any original work of authorship, including any modifications or additions to an existing work, that is intentionally submitted by You to the Project for inclusion in, or documentation of, the Project (”the Work”). For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Project or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Project for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by You as "Not a Contribution."

2. Grant of Copyright License. Subject to the terms and conditions of this Agreement, You hereby grant to IBM and to recipients of software distributed by IBM a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare derivative works of, publicly display, publicly perform, sublicense, and distribute Your Contributions and such derivative works.

3. Grant of Patent License. Subject to the terms and conditions of this Agreement, You hereby grant to IBM and to recipients of software distributed by IBM a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work to which Your Contribution(s) were submitted, where such license applies only to those patent claims licensable by You that are necessarily infringed by Your Contribution(s) alone or by combination of Your Contribution(s) with the Work to which such Contribution(s) was submitted. If any entity institutes patent litigation against You or any other entity (including a cross-claim or counterclaim in a lawsuit) alleging that your Contribution, or the Work to which you have contributed, constitutes direct or contributory patent infringement, then any patent licenses granted to that entity under this Agreement for that Contribution or Work shall terminate as of the date such litigation is filed.

4. You represent that you are legally entitled to grant the above license. If your employer(s) has rights to intellectual property that you create that includes your Contributions, you represent that you have received permission to make Contributions on behalf of that employer, that your employer has waived such rights for your Contributions to the Project, or that your employer has executed a separate Corporate CLA with IBM.

5. You represent that each of Your Contributions is Your original creation (see section 7 for submissions on behalf of others). You represent that Your Contribution submissions include complete details of any third-party license or other restriction (including, but not limited to, related patents and trademarks) of which you are personally aware and which are associated with any part of Your Contributions.

6. You are not expected to provide support for Your Contributions, except to the extent You desire to provide support. You may provide support for free, for a fee, or not at all. Unless required by applicable law or agreed to in writing, You provide Your Contributions on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON- INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE.

7. Should You wish to submit work that is not Your original creation, You may submit it to the Project separately from any Contribution, identifying the complete details of its source and of any license or other restriction (including, but not limited to, related patents, trademarks, and license agreements) of which you are personally aware, and conspicuously marking the work as "Submitted on behalf of a third-party: [named here]".

8. You agree to notify IBM of any facts or circumstances of which you become aware that would make these representations inaccurate in any respect.

Please sign and date: ______________________________________________________________

38 changes: 38 additions & 0 deletions CONTRIBUTING.md
@@ -0,0 +1,38 @@
# Contributing to Openwhisk Controller

We welcome contributions, but request you follow these guidelines.

- [Raising issues](#raising-issues)
- [Contributor License Agreement](#contributor-license-agreement)
- [Coding Standards](#coding-standards)

## Raising issues

Please raise any bug reports on the issue tracker. Be sure to
search the list to see if your issue has already been raised.

A good bug report is one that make it easy for us to understand what you were
trying to do and what went wrong. Provide as much context as possible so we can try to recreate the issue.


### Contributor License Agreement

In order for us to accept pull-requests, the contributor must first complete
a Contributor License Agreement (CLA). This clarifies the intellectual
property license granted with any contribution. It is for your protection as a
Contributor as well as the protection of IBM and its clients; it does not
change your rights to use your own Contributions for any other purpose.

You can download the CLAs here:

- [individual](CLA-INDIVIDUAL.md)
- [corporate](CLA-CORPORATE.md)


### Coding standards

Please ensure you follow the coding standards used throughout the existing
code base. Some basic rules include:

- all files must have the Apache license in the header.
- all PRs must have passing builds for all operating systems.
17 changes: 17 additions & 0 deletions Dockerfile
@@ -0,0 +1,17 @@
# Use docker multi-stage build to create the Openwhisk Controller image
FROM golang:1.10.3 as builder

# Copy in the go src
WORKDIR /go/src/github.com/ibm/openwhisk-operator
COPY pkg/ pkg/
COPY cmd/ cmd/
COPY vendor/ vendor/

# Build
RUN CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -a -o manager github.com/ibm/openwhisk-operator/cmd/manager

FROM ubuntu:latest
RUN apt-get update && apt-get install --no-install-recommends -y ca-certificates && rm -rf /var/lib/apt/lists/*
WORKDIR /root/
COPY --from=builder /go/src/github.com/ibm/openwhisk-operator/manager .
ENTRYPOINT ["./manager"]

0 comments on commit 5ecf1b9

Please sign in to comment.