pulumi/lib
joeduffy acd52778b7 Eliminate the expandTags functionality
This change eliminates the AWS package's cloudformation.expandTags
functionality.  The primary reason is that we haven't yet implemented
string/array intrinsics (see marapongo/mu#80), and so the presence of
this routine was preventing verification of the AWS library.  But, it
turns out, the expandTags routine was violating our "zero artistic
license" principle for the foundational cloud packages.  Namely, it
was auto-adding the Name=<name> tag, when the name property was set,
capturing an idiomatic AWS resource pattern.  Instead of doing that,
we will just project tags in their raw form, and add such conveniences
(possibly) add a higher level in the layer cake.
2017-02-10 15:10:30 -08:00
..
aws Eliminate the expandTags functionality 2017-02-10 15:10:30 -08:00
mu Move Mu library source files underneath src/ directory 2017-02-10 09:10:36 -08:00
mux Update some READMEs from last night 2017-02-02 11:09:33 -08:00
README.md Further reshuffle Protobufs; generate JavaScript code 2017-02-10 09:28:46 -08:00

mu/lib

This directory contains the various MuPackage libraries that Mu programs may depend upon. The Mu standard library (under mu/) is special in that every Mu program will ultimately use it directly or indirectly to create resources.

Note that these are written in the Mu subsets of the languages and therefore cannot perform I/O, etc.

Eventually these packages will be published like any other NPM MuPackage. For now, they are consumed only in a development capacity, and so there are some manual steps required to prepare a development workspace.

For each library <lib> you wish to use, in dependency order:

  • cd <lib>
  • yarn install
  • For each dependency <dep>:
    • yarn link dep
  • yarn build
  • yarn link

And then from within each MuPackage's directory that will consume said libraries, for each such library <lib>:

  • yarn link <lib>

For example, let's say we want to use the Mu standard library and the AWS library from a MuPackage /dev/mypackage:

  • First, cd $GOPATH/src/github.com/marapongo/mu/lib/mu:
    • yarn install
    • yarn build
    • yarn link
  • Next, cd $GOPATH/src/github.com/marapongo/mu/lib:
    • yarn install
    • yarn link mu
    • yarn build
    • yarn link
  • Finally, cd /dev/mypackage:
    • yarn link mu
    • yarn link @mu/aws
  • Now we are ready to go working on mypackage; references to mu and @mu/aws will be resolved correctly.