Giter Club home page Giter Club logo

machine-api-provider-aws's Introduction

Machine API Provider AWS

This repository contains implementations of AWS Provider for Machine API.

What is the Machine API

A declarative API for creating and managing machines in an OpenShift cluster. The project is based on v1alpha2 version of Cluster API.

Documentation

Architecture

The provider imports Machine controller from machine-api-operator and provides implementation for Actuator interface. The Actuator implementation is responsible for CRUD operations on AWS API.

Building and running controller locally

NO_DOCKER=1 make build && ./bin/machine-controller-manager

By default, we run make tasks in a container. To run the controller locally, set NO_DOCKER=1.

Running tests

Unit

In order to run unit tests use make test.

E2E Tests

If you wish to run E2E tests, you can use make e2e. Make sure you have a running OpenShift cluster on AWS.

machine-api-provider-aws's People

Contributors

abhinavdahiya avatar abutcher avatar aleskandro avatar alexander-demicev avatar bison avatar csrwng avatar damdo avatar danil-grigorev avatar detiber avatar dgoodwin avatar elmiko avatar enxebre avatar fedosin avatar frobware avatar ingvagabund avatar joelspeed avatar lobziik avatar michaelgugino avatar odvarkadaniel avatar openshift-ci[bot] avatar openshift-merge-robot avatar paulfantom avatar radekmanak avatar samuelstuchly avatar sjenning avatar spangenberg avatar trawler avatar vikaschoudhary16 avatar wking avatar yselkowitz avatar

Stargazers

 avatar  avatar

Watchers

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

machine-api-provider-aws's Issues

accountID update in providerID column of machine

We are running infra and worker machinesets in multiple AWS accounts, in a single cluster, and we'd like to see the PROVIDERID, from the machine api, include the AWS account ID. Something like: aws://012345678910/us-west-1a/i-abc123

This would be helpful discerning machine account placement when exectuing oc -n openshift-machine-api get machines -o wide.

@kimba74 suggested updating the machine reconciler function setProviderID with the following snippet:

accountID := ""
if instance.NetworkInterfaces[0] != nil { 
        // Referencing instance.NetworkInterfaces[0] since all network interfaces have the same OwnerId
	accountID = aws.StringValue(instance.NetworkInterfaces[0].OwnerId)
}
providerID := fmt.Sprintf("aws://%s/%s/%s", accountID, availabilityZone, aws.StringValue(instance.InstanceId))

If there aren't any concerns, we can go ahead and submit this as PR.

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.