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. |
||
---|---|---|
.. | ||
aws | ||
mu | ||
mux | ||
README.md |
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 tomu
and@mu/aws
will be resolved correctly.