abhinavdahiya / machine-config-operator

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

machine-config-operator

Generic building

You can either use the Makefile or the hack/build-go.sh script directory to build the targets. When using hack/build-go.sh you will need to run it via WHAT=<TARGET> hack/build-go.sh

machine-config-operator

  • Build: make machine-config-operator

machine-config-server

machine-config-daemon

machine-config-controller

  • Design doc
  • Build: make machine-config-controller

Tests

Tests can be executed on a per package basis with go test like so:

go test -v github.com/openshift/machine-config-operator/pkg/apis

All tests can be executed with:

make test

Building Images

NOTE: To build images you will need podman installed.

Images can be built for the corresponding Dockerfiles via make image-<TOPIC> where <TOPIC> is the suffix after the first dot. For example Dockerfile.setup-etcd-environment.rhel7 would be make image-setup-etcd-environment.rhel7.

Managing Go Dependencies

We follow a hard flattening approach; i.e. direct and inherited dependencies are installed in the base vendor/.

Dependencies are managed with dep but committed directly to the repository. If you don't have dep, install the latest release from Installation link.

We require atleast following version for dep:

dep:
 version     : v0.5.0
 build date  : 2018-07-26
 git hash    : 224a564
 go version  : go1.10.3

To add a new dependency:

  • Edit the Gopkg.toml file to add your dependency.
  • Ensure you add a version field for the tag or the revision field for commit id you want to pin to.
  • Revendor the dependencies:
dep ensure

This guide a great source to learn more about using dep is .

For the sake of your fellow reviewers, commit vendored code separately from any other changes.

About

License:Apache License 2.0


Languages

Language:Go 97.7%Language:Shell 1.9%Language:Makefile 0.5%