GithubHelp home page GithubHelp logo

clumsy_bird's Introduction

Clumsy Bird Application

This track highlights the use of the TFC multi-space pattern to deploy the Clumsy Bird Application. It will keep the network and compute portions of the application in seperate TFC workspaces and connect them via a chain-runner which uses the tfe_workspace_run resource to define workspace dependencies between these workspaces.

Bootstrap the multi-workspace TFC Pattern

Bootstrap the TFC infrastructure by applying a TFC Run in the workspace - clumsy-bird-bootstrap. This is a workspace that is VCS connected to https://github.com/rptcloud/clumsy_bird pointing to the 0-bootstrap working directory.

Bootstrap dependencies:

  • Your TFC org must have VCS set up within it to create new workspaces linked to GitHub orgs. The config here assumes exactly one GitHub VCS provider.
  • The bootstrap workspace runs in Terraform Cloud too and requires the variable TFE_TOKEN to be set.
  • This workspace is VCS connected against the 0-bootsrap directory in the github.com/rptcloud/clumsy_bird repository

Create Infrastructure

  • Update the AWS Creds - Clumsy Bird Variable Set to include the correct AWS Credentials.
  • Update the TFE_TOKEN variable within the clumsy-bird-app-deploy workspace with a TFE User token.
  • Inside TFC first apply the clumsy-bird-app-deploy workspace and this will trigger the clumsy-bird-network and clumsy-bird-compute workspaces.
  • You can manage the compute independently of the network, but changes in the network will trigger changes in the compute environment.

Building and Destroying:

In 0-bootstrap, run terraform apply. That will create a few projects, some workspaces, and a few other resources. There are no external dependencies outside of Terraform Cloud, to make things simple. You can totally expand upon these ideas to do things with other Providers.

When done with the exercise, run a terraform destroy in the clumsy-bird-bootstrap workspace to cleanup the Clumsy Bird project, workspaces and variable sets.

clumsy_bird's People

Contributors

gmaentz avatar rptdata 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.