171 lines
8.2 KiB
Markdown
Raw Permalink Normal View History

GREAT WEBSITE MIGRATION OF 2018 (#1269) * Move content into docs/content * Make navigation and doc generation work Signed-off-by: Christian Nunciato <c@nunciato.org> * Make search work Signed-off-by: Christian Nunciato <c@nunciato.org> * Move docs-specific layouts into layouts/docs Signed-off-by: Christian Nunciato <c@nunciato.org> * Move docs partials into layouts/partials/docs Signed-off-by: Christian Nunciato <c@nunciato.org> * Share a common header and footer Signed-off-by: Christian Nunciato <c@nunciato.org> * Add product & pricing pages, modify main nav Signed-off-by: Christian Nunciato <c@nunciato.org> * Bring images under assets, docs images under assets/images/docs Signed-off-by: Christian Nunciato <c@nunciato.org> * Link to the docs home page, fix image ref Signed-off-by: Christian Nunciato <c@nunciato.org> * Add containers, serverless, kubernetes topics Signed-off-by: Christian Nunciato <c@nunciato.org> * Add careers Signed-off-by: Christian Nunciato <c@nunciato.org> * Add compete, compete -> migrate Signed-off-by: Christian Nunciato <c@nunciato.org> * About, contact Signed-off-by: Christian Nunciato <c@nunciato.org> * Add legal Signed-off-by: Christian Nunciato <c@nunciato.org> * Add product Signed-off-by: Christian Nunciato <c@nunciato.org> * Add partner content Signed-off-by: Christian Nunciato <c@nunciato.org> * Add webinar Signed-off-by: Christian Nunciato <c@nunciato.org> * Add why-pulumi Signed-off-by: Christian Nunciato <c@nunciato.org> * Add GitHub redirect, support Signed-off-by: Christian Nunciato <c@nunciato.org> * Add blog * Add blog - update post frontmatter * Update content/_index.md Co-Authored-By: Justin Van Patten <jvp@justinvp.com> * Remove drafts & redundant fonts, move asset dirs up a level Signed-off-by: Christian Nunciato <c@nunciato.org> * Reconcile blog navigation Signed-off-by: Christian Nunciato <c@nunciato.org> * Migrate some blog content (#1147) * Reconcile www, blog and docs footer items (#1141) Signed-off-by: Christian Nunciato <c@nunciato.org> * Clean up blog layout (#1148) * Migrate more blog posts (#1157) * Replace Bootstrap with TailwindCSS * Add Tailwind * Create a config directory under assets, move PostCSS and Tailwind configs into it * Remove Bootstrap Sass and JS referemce * Refactor the header, base template, and footer to use Tailwind * Pull TOC Sass into its own partial Signed-off-by: Christian Nunciato <c@nunciato.org> * Refactor the docs home page Signed-off-by: Christian Nunciato <c@nunciato.org> * Refactor docs single, list and section layouts Signed-off-by: Christian Nunciato <c@nunciato.org> * Refactor quickstart-clouds partial Signed-off-by: Christian Nunciato <c@nunciato.org> * Reposition config items to fix syntax highlighting Signed-off-by: Christian Nunciato <c@nunciato.org> * Replace syntax CSS theme with Monokai Signed-off-by: Christian Nunciato <c@nunciato.org> * Add a dark blue for links Signed-off-by: Christian Nunciato <c@nunciato.org> * Add the beginnings of Sass color settings Signed-off-by: Christian Nunciato <c@nunciato.org> * Add a Sass file for langchoose Signed-off-by: Christian Nunciato <c@nunciato.org> * Give no-select its own Sass also, since it’s a partial Signed-off-by: Christian Nunciato <c@nunciato.org> * Give docs single and list templates more width for main content Signed-off-by: Christian Nunciato <c@nunciato.org> * Add some padding to the TOC, since we don’t have proper gutters yet Signed-off-by: Christian Nunciato <c@nunciato.org> * Fix button on Quickstart home page Signed-off-by: Christian Nunciato <c@nunciato.org> * TOC styles Signed-off-by: Christian Nunciato <c@nunciato.org> * Quickstart clouds Signed-off-by: Christian Nunciato <c@nunciato.org> * Padding to left and right columns Signed-off-by: Christian Nunciato <c@nunciato.org> * Black for TOC Signed-off-by: Christian Nunciato <c@nunciato.org> * Refactor docs/aws to use its own layouts Signed-off-by: Christian Nunciato <c@nunciato.org> * Fix the AWS tech partner image Signed-off-by: Christian Nunciato <c@nunciato.org> * Adjust AWS layouts Signed-off-by: Christian Nunciato <c@nunciato.org> * Move docs-home markup into a layout Signed-off-by: Christian Nunciato <c@nunciato.org> * Format the mini-toc Signed-off-by: Christian Nunciato <c@nunciato.org> * Reduce subhead sizes a bit Signed-off-by: Christian Nunciato <c@nunciato.org> * Remove snowflake styles Signed-off-by: Christian Nunciato <c@nunciato.org> * Extract some Sass partials Signed-off-by: Christian Nunciato <c@nunciato.org> * Define initial purple and blue palettes, use numbered colors instead Signed-off-by: Christian Nunciato <c@nunciato.org> * Refactor blog templates Signed-off-by: Christian Nunciato <c@nunciato.org> * Make blog summary a partial, style pagination Signed-off-by: Christian Nunciato <c@nunciato.org> * Fix expanded URLs Signed-off-by: Christian Nunciato <c@nunciato.org> * Rename Documentation to Reference Signed-off-by: Christian Nunciato <c@nunciato.org> * A smattering of minor adjustments Signed-off-by: Christian Nunciato <c@nunciato.org> * Selection state for tags Signed-off-by: Christian Nunciato <c@nunciato.org> * Delete more Bootstrap Signed-off-by: Christian Nunciato <c@nunciato.org> * Comment the banner Signed-off-by: Christian Nunciato <c@nunciato.org> * Restore footer links Signed-off-by: Christian Nunciato <c@nunciato.org> * Legal layout Signed-off-by: Christian Nunciato <c@nunciato.org> * Remove unused layout Signed-off-by: Christian Nunciato <c@nunciato.org> * Refactor careers page Signed-off-by: Christian Nunciato <c@nunciato.org> * Use top-level URLs for legal docs Signed-off-by: Christian Nunciato <c@nunciato.org> * Add RSS for the blog (#1170) * Add RSS for the blog * Cleanup team data (#1195) * Cleanup team data * Add missing newlines at EOF * Blog content as of 6/16 (#1196) * Blog content layout tweaks * Migrated blog content (as of Sun 6/16) * Address PR feedback, replace links to pulumi.io * Add fusion stack Any changes to the `fusion` branch will now be deployed to https://fusion.pulumi.io/. * Fix broken links * Fix broken images in fusion branch (#1207) Deletes unnecessary uses of `BaseURL`. In a small number of cases, where we want to emit an absolute URL that includes the `BaseURL`, use the `absURL` function instead, which is smart about handling missing/extra slashes. * Integrate www content (#1208) Signed-off-by: Christian Nunciato <c@nunciato.org> * Highlight currently selected section tab (#1216) * Remove unused partials (#1215) These are no longer referenced, so they can be removed. Signed-off-by: Christian Nunciato <c@nunciato.org> * Blog content as of 6/24 (#1218) * Port running-containers-in-aws-the-lowdown-ecs-fargate-and-eks * Port building-and-publishing-docker-images-to-a-private-amazon-ecr-repository * Port happy-birthday-to-pulumi-open-source * Commit updates to package-lock.json * Link cleanups and other fixes * Remove 'wip' tag * Restore meta_* fields, tidy up some frontmatter (#1214) Signed-off-by: Christian Nunciato <c@nunciato.org> * Add search (#1217) Signed-off-by: Christian Nunciato <c@nunciato.org> * Hide `.language-prologue-*` by default (#1212) So they all don't initially flash as being visible before all but the selected language are hidden. Port from `_pulumi.scss`. * Limit team members to those with status “active” (#1219) Signed-off-by: Christian Nunciato <c@nunciato.org> * Fix links to datadog provider * Remove top margin from code snippets under lang tabs (#1223) * Update MBR DNA logo (#1222) * Add links to cloud logos (#1221) And use `logo-aws_white.png` for AWS * Remove unnecessary aliases (#1210) Now that we'll be hosting the docs on a new domain, there's no need to maintain these aliases. The old site hosted at https://pulumi.io will have redirects from the old aliases to the new location on the new site. * Pricing page updates (#1224) * Add swooshes to the home, pricing and webinar pages. * Replace “tech” PNGs for GitHub, GitLab, Atlassian and SAML with SVGs, and add an email SVG, in order to align all of their images in the pricing grid. * Add a “See plan details” link above the pricing grid. * Update Font Awesome to version 5.8.1 (to match what's in use on www today) in order to pull in the infinity icons used in the pricing grid. * Align CTA buttons horizontally in adjacent boxes containing content of varying heights. * Fix duplicate links on the home and product pages. Signed-off-by: Christian Nunciato <c@nunciato.org> * Update API docs (#1227) * Update tsdocgen paths * Updated API docs * Fix broken images (#1228) Remove unnecessary `{{ .Site.BaseURL }}` prefix from image URLs. * Fix Hugo build warning about non-relative ref/relref page reference (#1229) * Fix page titles and errant anchors (#1226) * Prevent anchors on the home page * Fix page titles Signed-off-by: Christian Nunciato <c@nunciato.org> * Add a robots.txt file (#1225) This change adds a robots.txt template authorizing seach-engine indexing for all pages of the production site. It assumes that all non-production builds will override the `baseURL` configuration property with something other than `https://pulumi.com/`. Signed-off-by: Christian Nunciato <c@nunciato.org> * Blog content fixes (#1231) * Correct post dates, titles * Revert to previous tags * Unify tags, adjust for display * Replace short, social summaries with longer ones * Use a fixed height for the utility bar (#1232) When the GitHub widget loads asynchronously and pops into view, it causes the whole page to shift downward a few pixels, because the widget is taller than the links beside it. Applying an explicit hight to the utility bar fixes this. Signed-off-by: Christian Nunciato <c@nunciato.org> * Fix TOC expansion for the tour (#1234) We're very likely going to remove the tour and disperse its content elsewhere, but in the meantime, fix the TOC expansion for "Beyond the Basics" items. * Add syntax highlighing to layout templates (#1238) This change adds a partial for highlighting code snippets in layouts. Signed-off-by: Christian Nunciato <c@nunciato.org> * Add home-page video (#1240) Also makes a few slight adjustments to improve mobile layout on the home page. Signed-off-by: Christian Nunciato <c@nunciato.org> * Blog layout and styling improvements (#1237) * Use explicit code blcoks with language * Fix sort order for Author and Tag listings * Make sidebar toggleable on mobile * Resize "poster" image for blog listings * Crop photos to be square * Add posted date, post tags to blog footer * Add recent posts lists to sidebar * Add syntax highlighting to some missed posts * Fix Hugo build warning * Adjust sidebar styling * Cleanup the /docs page (#1239) * Cleanup /docs/aws layouts to match other docs sections * Cleanup /docs pages - Add left nav - Make /docs page look slightly less like a "homepage" - Add top-level "Get Started" and "Reference" headings to left nav * Add `.btn-secondary` and use it in a few places * Remove unnecessary cursor setting (#1245) Should be using the default here. I was debugging and forgot to switch this back before committing. Signed-off-by: Christian Nunciato <c@nunciato.org> * Update the home page video (#1244) This is a slightly shorter version, with typing sections sped up slightly to better respect our visitors’ time. :smile: Signed-off-by: Christian Nunciato <c@nunciato.org> * API doc styling improvements (#1247) * Update API doc styling for Python Bring back the styles used for our Python API docs, convert to use Tailwind, and make further tweaks to make it look even better. For example, all definitions now look like code blocks and indentation and spacing is used to improve the hierarchy of the content. * Only emit the <h1>.Title</h1> if there is a .Title The generated Python API docs don't currently include front matter and therefore do not have a title. We should fix the Python docs gen to do that, but in the meantime, only emit `<h1>.Title</h1>` if the page has a `.Title`, to avoid an unnecessary gap at the top of the page. * Update _pygments.scss to select .highlight instead of .chroma The syntax highlighted code generated by Hugo looks like: ``` <div class="highlight"> <pre class="chroma"> <code class="language-foo"> ... </code> </pre> </div> ``` And our styles looks like: ``` .chroma .k { ... } .chroma .kc { ... } ... ``` This works good, but our generated Python docs, which uses Pygments to do the syntax highlighting, doesn't use `.chroma`, so it doesn't get any syntax highlighting currently, even though all the Pygments classes are there. This is true for our Node.js docs as well, although, based on how we generate the code for that currently, we could relatively easily update the templates to include a `.chroma` class. In all cases, the code that we want highlighted will have a `.highlight` class surrounding it, so just update our styles to select `.highlight` instead of `.chroma`. ``` .highlight .k { ... } .highlight .kc { ... } ... ``` * Update API doc styling for Node.js * Various mobile adjustments and cleanup (#1250) * Pull the hero and section nav into Tailwind "components" and apply them. * Adjust home-page video dimensions accordingly. * Add mobile x-padding to sections that hadn't gotten it yet. * Add an anchor exclusion to the head for the About page. * Fix mobile layout for the Support page. * Fix centering and item distribution on the About page. * Additional minor mobile-related adjustments as encountered. Signed-off-by: Christian Nunciato <c@nunciato.org> * Fix bug in lang chooser (#1249) If I've previously viewed a page in our docs with the language tabs, such as the Get Started guide, and I click the Python tab, that language choice will be persisted to a cookie. If I then visit our Node.js API docs, the lang chooser will see the saved value of "Python" and try to select that tab, hiding all other language snippets. But our Node.js API docs only contain JavaScript and TypeScript snippets, so the end result is that all snippets are hidden and no tab is selected. This change fixes that. If the value in the cookie does not exist in any of the tabs on the page, fallback to the default (JavaScript), otherwise fallback to the first tab that is available on the page. * More small fixes (#1254) * Make the header more responsive Adds padding to medium and above, and adjusts font size and spacing at medium width in order to accommodate the number of items we’re displaying currently. Also uses the full Pulumi logo, since we have room for that now, and adds a little color to the hamburger. Signed-off-by: Christian Nunciato <c@nunciato.org> * Bottom-align the image on the whitepaper layout Also removes the `header` selector from `_hero.scss` in order to reduce the specificity of the rule, allowing it to be overidden more easily with other Tailwind classnames. Signed-off-by: Christian Nunciato <c@nunciato.org> * Add team@pulumi link to the footer Signed-off-by: Christian Nunciato <c@nunciato.org> * Restore the newsroom and investors sections Somehow these got dropped! :scream: Signed-off-by: Christian Nunciato <c@nunciato.org> * Add hero background glows (#1257) Also deletes unused templates. Signed-off-by: Christian Nunciato <c@nunciato.org> * Hide scrollbars if not needed (#1256) * Improve Pricing page responsiveness, fix a few other small things (#1259) * Fix section link on the Why Pulumi page Signed-off-by: Christian Nunciato <c@nunciato.org> * Capitalize Kubernetes in copy Signed-off-by: Christian Nunciato <c@nunciato.org> * Adjust image sizes on Whitepaper page Properly size them on both mobile and desktop. Signed-off-by: Christian Nunciato <c@nunciato.org> * Fix paging on mobile Decrease padding to prevent overflow. Signed-off-by: Christian Nunciato <c@nunciato.org> * Improve Pricing page layout Signed-off-by: Christian Nunciato <c@nunciato.org> * Replace home page video with carousel (#1260) Signed-off-by: Christian Nunciato <c@nunciato.org> * Change Segment module to WWW (#1265) * Hook up new www.pulumi.com/staging stack to CI/CD (#1262) * Move older 'pulumi.io' stacks to infrastructure-old * Add new 'www.pulumi.com' infrastructure folder * Scripts to hook up to CI/CD * Switch back to using generic Travis worker * Add alias to CDN for staging.pulumi.io * Remove alias to staging.pulumi.io * Do not use named profiles for deployments There's an issue today where named profiles which use `credential_source=Environment` don't actually behave correctly with the assume-role tool. Instead of actually assuming the role, it just uses the credentials in the environment, which is not exactly what you want. For now, explicitly set the ARN we want to assume, instead of indirecting across a named profile. * Remove CloudFront alias entirely * Add hover menu (#1266) Signed-off-by: Christian Nunciato <c@nunciato.org> * Hook up new www.pulumi.com/production stack to CI/CD (#1267) * Hook up new www.pulumi.com/production stack to CI/CD * Correct Makefile syntax * Migrate blog posts as of 7/2 (#1268) * Fix Makefile syntax * Fix spelling error ::sigh::
2019-07-02 16:30:33 -07:00
---
title: "Simplified Outputs in Pulumi 0.17"
authors: ["cyrus-najmabadi"]
2021-05-13 12:54:02 -07:00
tags: ["features"]
GREAT WEBSITE MIGRATION OF 2018 (#1269) * Move content into docs/content * Make navigation and doc generation work Signed-off-by: Christian Nunciato <c@nunciato.org> * Make search work Signed-off-by: Christian Nunciato <c@nunciato.org> * Move docs-specific layouts into layouts/docs Signed-off-by: Christian Nunciato <c@nunciato.org> * Move docs partials into layouts/partials/docs Signed-off-by: Christian Nunciato <c@nunciato.org> * Share a common header and footer Signed-off-by: Christian Nunciato <c@nunciato.org> * Add product & pricing pages, modify main nav Signed-off-by: Christian Nunciato <c@nunciato.org> * Bring images under assets, docs images under assets/images/docs Signed-off-by: Christian Nunciato <c@nunciato.org> * Link to the docs home page, fix image ref Signed-off-by: Christian Nunciato <c@nunciato.org> * Add containers, serverless, kubernetes topics Signed-off-by: Christian Nunciato <c@nunciato.org> * Add careers Signed-off-by: Christian Nunciato <c@nunciato.org> * Add compete, compete -> migrate Signed-off-by: Christian Nunciato <c@nunciato.org> * About, contact Signed-off-by: Christian Nunciato <c@nunciato.org> * Add legal Signed-off-by: Christian Nunciato <c@nunciato.org> * Add product Signed-off-by: Christian Nunciato <c@nunciato.org> * Add partner content Signed-off-by: Christian Nunciato <c@nunciato.org> * Add webinar Signed-off-by: Christian Nunciato <c@nunciato.org> * Add why-pulumi Signed-off-by: Christian Nunciato <c@nunciato.org> * Add GitHub redirect, support Signed-off-by: Christian Nunciato <c@nunciato.org> * Add blog * Add blog - update post frontmatter * Update content/_index.md Co-Authored-By: Justin Van Patten <jvp@justinvp.com> * Remove drafts & redundant fonts, move asset dirs up a level Signed-off-by: Christian Nunciato <c@nunciato.org> * Reconcile blog navigation Signed-off-by: Christian Nunciato <c@nunciato.org> * Migrate some blog content (#1147) * Reconcile www, blog and docs footer items (#1141) Signed-off-by: Christian Nunciato <c@nunciato.org> * Clean up blog layout (#1148) * Migrate more blog posts (#1157) * Replace Bootstrap with TailwindCSS * Add Tailwind * Create a config directory under assets, move PostCSS and Tailwind configs into it * Remove Bootstrap Sass and JS referemce * Refactor the header, base template, and footer to use Tailwind * Pull TOC Sass into its own partial Signed-off-by: Christian Nunciato <c@nunciato.org> * Refactor the docs home page Signed-off-by: Christian Nunciato <c@nunciato.org> * Refactor docs single, list and section layouts Signed-off-by: Christian Nunciato <c@nunciato.org> * Refactor quickstart-clouds partial Signed-off-by: Christian Nunciato <c@nunciato.org> * Reposition config items to fix syntax highlighting Signed-off-by: Christian Nunciato <c@nunciato.org> * Replace syntax CSS theme with Monokai Signed-off-by: Christian Nunciato <c@nunciato.org> * Add a dark blue for links Signed-off-by: Christian Nunciato <c@nunciato.org> * Add the beginnings of Sass color settings Signed-off-by: Christian Nunciato <c@nunciato.org> * Add a Sass file for langchoose Signed-off-by: Christian Nunciato <c@nunciato.org> * Give no-select its own Sass also, since it’s a partial Signed-off-by: Christian Nunciato <c@nunciato.org> * Give docs single and list templates more width for main content Signed-off-by: Christian Nunciato <c@nunciato.org> * Add some padding to the TOC, since we don’t have proper gutters yet Signed-off-by: Christian Nunciato <c@nunciato.org> * Fix button on Quickstart home page Signed-off-by: Christian Nunciato <c@nunciato.org> * TOC styles Signed-off-by: Christian Nunciato <c@nunciato.org> * Quickstart clouds Signed-off-by: Christian Nunciato <c@nunciato.org> * Padding to left and right columns Signed-off-by: Christian Nunciato <c@nunciato.org> * Black for TOC Signed-off-by: Christian Nunciato <c@nunciato.org> * Refactor docs/aws to use its own layouts Signed-off-by: Christian Nunciato <c@nunciato.org> * Fix the AWS tech partner image Signed-off-by: Christian Nunciato <c@nunciato.org> * Adjust AWS layouts Signed-off-by: Christian Nunciato <c@nunciato.org> * Move docs-home markup into a layout Signed-off-by: Christian Nunciato <c@nunciato.org> * Format the mini-toc Signed-off-by: Christian Nunciato <c@nunciato.org> * Reduce subhead sizes a bit Signed-off-by: Christian Nunciato <c@nunciato.org> * Remove snowflake styles Signed-off-by: Christian Nunciato <c@nunciato.org> * Extract some Sass partials Signed-off-by: Christian Nunciato <c@nunciato.org> * Define initial purple and blue palettes, use numbered colors instead Signed-off-by: Christian Nunciato <c@nunciato.org> * Refactor blog templates Signed-off-by: Christian Nunciato <c@nunciato.org> * Make blog summary a partial, style pagination Signed-off-by: Christian Nunciato <c@nunciato.org> * Fix expanded URLs Signed-off-by: Christian Nunciato <c@nunciato.org> * Rename Documentation to Reference Signed-off-by: Christian Nunciato <c@nunciato.org> * A smattering of minor adjustments Signed-off-by: Christian Nunciato <c@nunciato.org> * Selection state for tags Signed-off-by: Christian Nunciato <c@nunciato.org> * Delete more Bootstrap Signed-off-by: Christian Nunciato <c@nunciato.org> * Comment the banner Signed-off-by: Christian Nunciato <c@nunciato.org> * Restore footer links Signed-off-by: Christian Nunciato <c@nunciato.org> * Legal layout Signed-off-by: Christian Nunciato <c@nunciato.org> * Remove unused layout Signed-off-by: Christian Nunciato <c@nunciato.org> * Refactor careers page Signed-off-by: Christian Nunciato <c@nunciato.org> * Use top-level URLs for legal docs Signed-off-by: Christian Nunciato <c@nunciato.org> * Add RSS for the blog (#1170) * Add RSS for the blog * Cleanup team data (#1195) * Cleanup team data * Add missing newlines at EOF * Blog content as of 6/16 (#1196) * Blog content layout tweaks * Migrated blog content (as of Sun 6/16) * Address PR feedback, replace links to pulumi.io * Add fusion stack Any changes to the `fusion` branch will now be deployed to https://fusion.pulumi.io/. * Fix broken links * Fix broken images in fusion branch (#1207) Deletes unnecessary uses of `BaseURL`. In a small number of cases, where we want to emit an absolute URL that includes the `BaseURL`, use the `absURL` function instead, which is smart about handling missing/extra slashes. * Integrate www content (#1208) Signed-off-by: Christian Nunciato <c@nunciato.org> * Highlight currently selected section tab (#1216) * Remove unused partials (#1215) These are no longer referenced, so they can be removed. Signed-off-by: Christian Nunciato <c@nunciato.org> * Blog content as of 6/24 (#1218) * Port running-containers-in-aws-the-lowdown-ecs-fargate-and-eks * Port building-and-publishing-docker-images-to-a-private-amazon-ecr-repository * Port happy-birthday-to-pulumi-open-source * Commit updates to package-lock.json * Link cleanups and other fixes * Remove 'wip' tag * Restore meta_* fields, tidy up some frontmatter (#1214) Signed-off-by: Christian Nunciato <c@nunciato.org> * Add search (#1217) Signed-off-by: Christian Nunciato <c@nunciato.org> * Hide `.language-prologue-*` by default (#1212) So they all don't initially flash as being visible before all but the selected language are hidden. Port from `_pulumi.scss`. * Limit team members to those with status “active” (#1219) Signed-off-by: Christian Nunciato <c@nunciato.org> * Fix links to datadog provider * Remove top margin from code snippets under lang tabs (#1223) * Update MBR DNA logo (#1222) * Add links to cloud logos (#1221) And use `logo-aws_white.png` for AWS * Remove unnecessary aliases (#1210) Now that we'll be hosting the docs on a new domain, there's no need to maintain these aliases. The old site hosted at https://pulumi.io will have redirects from the old aliases to the new location on the new site. * Pricing page updates (#1224) * Add swooshes to the home, pricing and webinar pages. * Replace “tech” PNGs for GitHub, GitLab, Atlassian and SAML with SVGs, and add an email SVG, in order to align all of their images in the pricing grid. * Add a “See plan details” link above the pricing grid. * Update Font Awesome to version 5.8.1 (to match what's in use on www today) in order to pull in the infinity icons used in the pricing grid. * Align CTA buttons horizontally in adjacent boxes containing content of varying heights. * Fix duplicate links on the home and product pages. Signed-off-by: Christian Nunciato <c@nunciato.org> * Update API docs (#1227) * Update tsdocgen paths * Updated API docs * Fix broken images (#1228) Remove unnecessary `{{ .Site.BaseURL }}` prefix from image URLs. * Fix Hugo build warning about non-relative ref/relref page reference (#1229) * Fix page titles and errant anchors (#1226) * Prevent anchors on the home page * Fix page titles Signed-off-by: Christian Nunciato <c@nunciato.org> * Add a robots.txt file (#1225) This change adds a robots.txt template authorizing seach-engine indexing for all pages of the production site. It assumes that all non-production builds will override the `baseURL` configuration property with something other than `https://pulumi.com/`. Signed-off-by: Christian Nunciato <c@nunciato.org> * Blog content fixes (#1231) * Correct post dates, titles * Revert to previous tags * Unify tags, adjust for display * Replace short, social summaries with longer ones * Use a fixed height for the utility bar (#1232) When the GitHub widget loads asynchronously and pops into view, it causes the whole page to shift downward a few pixels, because the widget is taller than the links beside it. Applying an explicit hight to the utility bar fixes this. Signed-off-by: Christian Nunciato <c@nunciato.org> * Fix TOC expansion for the tour (#1234) We're very likely going to remove the tour and disperse its content elsewhere, but in the meantime, fix the TOC expansion for "Beyond the Basics" items. * Add syntax highlighing to layout templates (#1238) This change adds a partial for highlighting code snippets in layouts. Signed-off-by: Christian Nunciato <c@nunciato.org> * Add home-page video (#1240) Also makes a few slight adjustments to improve mobile layout on the home page. Signed-off-by: Christian Nunciato <c@nunciato.org> * Blog layout and styling improvements (#1237) * Use explicit code blcoks with language * Fix sort order for Author and Tag listings * Make sidebar toggleable on mobile * Resize "poster" image for blog listings * Crop photos to be square * Add posted date, post tags to blog footer * Add recent posts lists to sidebar * Add syntax highlighting to some missed posts * Fix Hugo build warning * Adjust sidebar styling * Cleanup the /docs page (#1239) * Cleanup /docs/aws layouts to match other docs sections * Cleanup /docs pages - Add left nav - Make /docs page look slightly less like a "homepage" - Add top-level "Get Started" and "Reference" headings to left nav * Add `.btn-secondary` and use it in a few places * Remove unnecessary cursor setting (#1245) Should be using the default here. I was debugging and forgot to switch this back before committing. Signed-off-by: Christian Nunciato <c@nunciato.org> * Update the home page video (#1244) This is a slightly shorter version, with typing sections sped up slightly to better respect our visitors’ time. :smile: Signed-off-by: Christian Nunciato <c@nunciato.org> * API doc styling improvements (#1247) * Update API doc styling for Python Bring back the styles used for our Python API docs, convert to use Tailwind, and make further tweaks to make it look even better. For example, all definitions now look like code blocks and indentation and spacing is used to improve the hierarchy of the content. * Only emit the <h1>.Title</h1> if there is a .Title The generated Python API docs don't currently include front matter and therefore do not have a title. We should fix the Python docs gen to do that, but in the meantime, only emit `<h1>.Title</h1>` if the page has a `.Title`, to avoid an unnecessary gap at the top of the page. * Update _pygments.scss to select .highlight instead of .chroma The syntax highlighted code generated by Hugo looks like: ``` <div class="highlight"> <pre class="chroma"> <code class="language-foo"> ... </code> </pre> </div> ``` And our styles looks like: ``` .chroma .k { ... } .chroma .kc { ... } ... ``` This works good, but our generated Python docs, which uses Pygments to do the syntax highlighting, doesn't use `.chroma`, so it doesn't get any syntax highlighting currently, even though all the Pygments classes are there. This is true for our Node.js docs as well, although, based on how we generate the code for that currently, we could relatively easily update the templates to include a `.chroma` class. In all cases, the code that we want highlighted will have a `.highlight` class surrounding it, so just update our styles to select `.highlight` instead of `.chroma`. ``` .highlight .k { ... } .highlight .kc { ... } ... ``` * Update API doc styling for Node.js * Various mobile adjustments and cleanup (#1250) * Pull the hero and section nav into Tailwind "components" and apply them. * Adjust home-page video dimensions accordingly. * Add mobile x-padding to sections that hadn't gotten it yet. * Add an anchor exclusion to the head for the About page. * Fix mobile layout for the Support page. * Fix centering and item distribution on the About page. * Additional minor mobile-related adjustments as encountered. Signed-off-by: Christian Nunciato <c@nunciato.org> * Fix bug in lang chooser (#1249) If I've previously viewed a page in our docs with the language tabs, such as the Get Started guide, and I click the Python tab, that language choice will be persisted to a cookie. If I then visit our Node.js API docs, the lang chooser will see the saved value of "Python" and try to select that tab, hiding all other language snippets. But our Node.js API docs only contain JavaScript and TypeScript snippets, so the end result is that all snippets are hidden and no tab is selected. This change fixes that. If the value in the cookie does not exist in any of the tabs on the page, fallback to the default (JavaScript), otherwise fallback to the first tab that is available on the page. * More small fixes (#1254) * Make the header more responsive Adds padding to medium and above, and adjusts font size and spacing at medium width in order to accommodate the number of items we’re displaying currently. Also uses the full Pulumi logo, since we have room for that now, and adds a little color to the hamburger. Signed-off-by: Christian Nunciato <c@nunciato.org> * Bottom-align the image on the whitepaper layout Also removes the `header` selector from `_hero.scss` in order to reduce the specificity of the rule, allowing it to be overidden more easily with other Tailwind classnames. Signed-off-by: Christian Nunciato <c@nunciato.org> * Add team@pulumi link to the footer Signed-off-by: Christian Nunciato <c@nunciato.org> * Restore the newsroom and investors sections Somehow these got dropped! :scream: Signed-off-by: Christian Nunciato <c@nunciato.org> * Add hero background glows (#1257) Also deletes unused templates. Signed-off-by: Christian Nunciato <c@nunciato.org> * Hide scrollbars if not needed (#1256) * Improve Pricing page responsiveness, fix a few other small things (#1259) * Fix section link on the Why Pulumi page Signed-off-by: Christian Nunciato <c@nunciato.org> * Capitalize Kubernetes in copy Signed-off-by: Christian Nunciato <c@nunciato.org> * Adjust image sizes on Whitepaper page Properly size them on both mobile and desktop. Signed-off-by: Christian Nunciato <c@nunciato.org> * Fix paging on mobile Decrease padding to prevent overflow. Signed-off-by: Christian Nunciato <c@nunciato.org> * Improve Pricing page layout Signed-off-by: Christian Nunciato <c@nunciato.org> * Replace home page video with carousel (#1260) Signed-off-by: Christian Nunciato <c@nunciato.org> * Change Segment module to WWW (#1265) * Hook up new www.pulumi.com/staging stack to CI/CD (#1262) * Move older 'pulumi.io' stacks to infrastructure-old * Add new 'www.pulumi.com' infrastructure folder * Scripts to hook up to CI/CD * Switch back to using generic Travis worker * Add alias to CDN for staging.pulumi.io * Remove alias to staging.pulumi.io * Do not use named profiles for deployments There's an issue today where named profiles which use `credential_source=Environment` don't actually behave correctly with the assume-role tool. Instead of actually assuming the role, it just uses the credentials in the environment, which is not exactly what you want. For now, explicitly set the ARN we want to assume, instead of indirecting across a named profile. * Remove CloudFront alias entirely * Add hover menu (#1266) Signed-off-by: Christian Nunciato <c@nunciato.org> * Hook up new www.pulumi.com/production stack to CI/CD (#1267) * Hook up new www.pulumi.com/production stack to CI/CD * Correct Makefile syntax * Migrate blog posts as of 7/2 (#1268) * Fix Makefile syntax * Fix spelling error ::sigh::
2019-07-02 16:30:33 -07:00
date: "2019-03-19"
meta_desc: "Based on feedback from cloud developers, Pulumi Outputs have been simplified for JavaScript and TypeScript simplifying the user experience."
meta_image: "comp-list.png"
GREAT WEBSITE MIGRATION OF 2018 (#1269) * Move content into docs/content * Make navigation and doc generation work Signed-off-by: Christian Nunciato <c@nunciato.org> * Make search work Signed-off-by: Christian Nunciato <c@nunciato.org> * Move docs-specific layouts into layouts/docs Signed-off-by: Christian Nunciato <c@nunciato.org> * Move docs partials into layouts/partials/docs Signed-off-by: Christian Nunciato <c@nunciato.org> * Share a common header and footer Signed-off-by: Christian Nunciato <c@nunciato.org> * Add product & pricing pages, modify main nav Signed-off-by: Christian Nunciato <c@nunciato.org> * Bring images under assets, docs images under assets/images/docs Signed-off-by: Christian Nunciato <c@nunciato.org> * Link to the docs home page, fix image ref Signed-off-by: Christian Nunciato <c@nunciato.org> * Add containers, serverless, kubernetes topics Signed-off-by: Christian Nunciato <c@nunciato.org> * Add careers Signed-off-by: Christian Nunciato <c@nunciato.org> * Add compete, compete -> migrate Signed-off-by: Christian Nunciato <c@nunciato.org> * About, contact Signed-off-by: Christian Nunciato <c@nunciato.org> * Add legal Signed-off-by: Christian Nunciato <c@nunciato.org> * Add product Signed-off-by: Christian Nunciato <c@nunciato.org> * Add partner content Signed-off-by: Christian Nunciato <c@nunciato.org> * Add webinar Signed-off-by: Christian Nunciato <c@nunciato.org> * Add why-pulumi Signed-off-by: Christian Nunciato <c@nunciato.org> * Add GitHub redirect, support Signed-off-by: Christian Nunciato <c@nunciato.org> * Add blog * Add blog - update post frontmatter * Update content/_index.md Co-Authored-By: Justin Van Patten <jvp@justinvp.com> * Remove drafts & redundant fonts, move asset dirs up a level Signed-off-by: Christian Nunciato <c@nunciato.org> * Reconcile blog navigation Signed-off-by: Christian Nunciato <c@nunciato.org> * Migrate some blog content (#1147) * Reconcile www, blog and docs footer items (#1141) Signed-off-by: Christian Nunciato <c@nunciato.org> * Clean up blog layout (#1148) * Migrate more blog posts (#1157) * Replace Bootstrap with TailwindCSS * Add Tailwind * Create a config directory under assets, move PostCSS and Tailwind configs into it * Remove Bootstrap Sass and JS referemce * Refactor the header, base template, and footer to use Tailwind * Pull TOC Sass into its own partial Signed-off-by: Christian Nunciato <c@nunciato.org> * Refactor the docs home page Signed-off-by: Christian Nunciato <c@nunciato.org> * Refactor docs single, list and section layouts Signed-off-by: Christian Nunciato <c@nunciato.org> * Refactor quickstart-clouds partial Signed-off-by: Christian Nunciato <c@nunciato.org> * Reposition config items to fix syntax highlighting Signed-off-by: Christian Nunciato <c@nunciato.org> * Replace syntax CSS theme with Monokai Signed-off-by: Christian Nunciato <c@nunciato.org> * Add a dark blue for links Signed-off-by: Christian Nunciato <c@nunciato.org> * Add the beginnings of Sass color settings Signed-off-by: Christian Nunciato <c@nunciato.org> * Add a Sass file for langchoose Signed-off-by: Christian Nunciato <c@nunciato.org> * Give no-select its own Sass also, since it’s a partial Signed-off-by: Christian Nunciato <c@nunciato.org> * Give docs single and list templates more width for main content Signed-off-by: Christian Nunciato <c@nunciato.org> * Add some padding to the TOC, since we don’t have proper gutters yet Signed-off-by: Christian Nunciato <c@nunciato.org> * Fix button on Quickstart home page Signed-off-by: Christian Nunciato <c@nunciato.org> * TOC styles Signed-off-by: Christian Nunciato <c@nunciato.org> * Quickstart clouds Signed-off-by: Christian Nunciato <c@nunciato.org> * Padding to left and right columns Signed-off-by: Christian Nunciato <c@nunciato.org> * Black for TOC Signed-off-by: Christian Nunciato <c@nunciato.org> * Refactor docs/aws to use its own layouts Signed-off-by: Christian Nunciato <c@nunciato.org> * Fix the AWS tech partner image Signed-off-by: Christian Nunciato <c@nunciato.org> * Adjust AWS layouts Signed-off-by: Christian Nunciato <c@nunciato.org> * Move docs-home markup into a layout Signed-off-by: Christian Nunciato <c@nunciato.org> * Format the mini-toc Signed-off-by: Christian Nunciato <c@nunciato.org> * Reduce subhead sizes a bit Signed-off-by: Christian Nunciato <c@nunciato.org> * Remove snowflake styles Signed-off-by: Christian Nunciato <c@nunciato.org> * Extract some Sass partials Signed-off-by: Christian Nunciato <c@nunciato.org> * Define initial purple and blue palettes, use numbered colors instead Signed-off-by: Christian Nunciato <c@nunciato.org> * Refactor blog templates Signed-off-by: Christian Nunciato <c@nunciato.org> * Make blog summary a partial, style pagination Signed-off-by: Christian Nunciato <c@nunciato.org> * Fix expanded URLs Signed-off-by: Christian Nunciato <c@nunciato.org> * Rename Documentation to Reference Signed-off-by: Christian Nunciato <c@nunciato.org> * A smattering of minor adjustments Signed-off-by: Christian Nunciato <c@nunciato.org> * Selection state for tags Signed-off-by: Christian Nunciato <c@nunciato.org> * Delete more Bootstrap Signed-off-by: Christian Nunciato <c@nunciato.org> * Comment the banner Signed-off-by: Christian Nunciato <c@nunciato.org> * Restore footer links Signed-off-by: Christian Nunciato <c@nunciato.org> * Legal layout Signed-off-by: Christian Nunciato <c@nunciato.org> * Remove unused layout Signed-off-by: Christian Nunciato <c@nunciato.org> * Refactor careers page Signed-off-by: Christian Nunciato <c@nunciato.org> * Use top-level URLs for legal docs Signed-off-by: Christian Nunciato <c@nunciato.org> * Add RSS for the blog (#1170) * Add RSS for the blog * Cleanup team data (#1195) * Cleanup team data * Add missing newlines at EOF * Blog content as of 6/16 (#1196) * Blog content layout tweaks * Migrated blog content (as of Sun 6/16) * Address PR feedback, replace links to pulumi.io * Add fusion stack Any changes to the `fusion` branch will now be deployed to https://fusion.pulumi.io/. * Fix broken links * Fix broken images in fusion branch (#1207) Deletes unnecessary uses of `BaseURL`. In a small number of cases, where we want to emit an absolute URL that includes the `BaseURL`, use the `absURL` function instead, which is smart about handling missing/extra slashes. * Integrate www content (#1208) Signed-off-by: Christian Nunciato <c@nunciato.org> * Highlight currently selected section tab (#1216) * Remove unused partials (#1215) These are no longer referenced, so they can be removed. Signed-off-by: Christian Nunciato <c@nunciato.org> * Blog content as of 6/24 (#1218) * Port running-containers-in-aws-the-lowdown-ecs-fargate-and-eks * Port building-and-publishing-docker-images-to-a-private-amazon-ecr-repository * Port happy-birthday-to-pulumi-open-source * Commit updates to package-lock.json * Link cleanups and other fixes * Remove 'wip' tag * Restore meta_* fields, tidy up some frontmatter (#1214) Signed-off-by: Christian Nunciato <c@nunciato.org> * Add search (#1217) Signed-off-by: Christian Nunciato <c@nunciato.org> * Hide `.language-prologue-*` by default (#1212) So they all don't initially flash as being visible before all but the selected language are hidden. Port from `_pulumi.scss`. * Limit team members to those with status “active” (#1219) Signed-off-by: Christian Nunciato <c@nunciato.org> * Fix links to datadog provider * Remove top margin from code snippets under lang tabs (#1223) * Update MBR DNA logo (#1222) * Add links to cloud logos (#1221) And use `logo-aws_white.png` for AWS * Remove unnecessary aliases (#1210) Now that we'll be hosting the docs on a new domain, there's no need to maintain these aliases. The old site hosted at https://pulumi.io will have redirects from the old aliases to the new location on the new site. * Pricing page updates (#1224) * Add swooshes to the home, pricing and webinar pages. * Replace “tech” PNGs for GitHub, GitLab, Atlassian and SAML with SVGs, and add an email SVG, in order to align all of their images in the pricing grid. * Add a “See plan details” link above the pricing grid. * Update Font Awesome to version 5.8.1 (to match what's in use on www today) in order to pull in the infinity icons used in the pricing grid. * Align CTA buttons horizontally in adjacent boxes containing content of varying heights. * Fix duplicate links on the home and product pages. Signed-off-by: Christian Nunciato <c@nunciato.org> * Update API docs (#1227) * Update tsdocgen paths * Updated API docs * Fix broken images (#1228) Remove unnecessary `{{ .Site.BaseURL }}` prefix from image URLs. * Fix Hugo build warning about non-relative ref/relref page reference (#1229) * Fix page titles and errant anchors (#1226) * Prevent anchors on the home page * Fix page titles Signed-off-by: Christian Nunciato <c@nunciato.org> * Add a robots.txt file (#1225) This change adds a robots.txt template authorizing seach-engine indexing for all pages of the production site. It assumes that all non-production builds will override the `baseURL` configuration property with something other than `https://pulumi.com/`. Signed-off-by: Christian Nunciato <c@nunciato.org> * Blog content fixes (#1231) * Correct post dates, titles * Revert to previous tags * Unify tags, adjust for display * Replace short, social summaries with longer ones * Use a fixed height for the utility bar (#1232) When the GitHub widget loads asynchronously and pops into view, it causes the whole page to shift downward a few pixels, because the widget is taller than the links beside it. Applying an explicit hight to the utility bar fixes this. Signed-off-by: Christian Nunciato <c@nunciato.org> * Fix TOC expansion for the tour (#1234) We're very likely going to remove the tour and disperse its content elsewhere, but in the meantime, fix the TOC expansion for "Beyond the Basics" items. * Add syntax highlighing to layout templates (#1238) This change adds a partial for highlighting code snippets in layouts. Signed-off-by: Christian Nunciato <c@nunciato.org> * Add home-page video (#1240) Also makes a few slight adjustments to improve mobile layout on the home page. Signed-off-by: Christian Nunciato <c@nunciato.org> * Blog layout and styling improvements (#1237) * Use explicit code blcoks with language * Fix sort order for Author and Tag listings * Make sidebar toggleable on mobile * Resize "poster" image for blog listings * Crop photos to be square * Add posted date, post tags to blog footer * Add recent posts lists to sidebar * Add syntax highlighting to some missed posts * Fix Hugo build warning * Adjust sidebar styling * Cleanup the /docs page (#1239) * Cleanup /docs/aws layouts to match other docs sections * Cleanup /docs pages - Add left nav - Make /docs page look slightly less like a "homepage" - Add top-level "Get Started" and "Reference" headings to left nav * Add `.btn-secondary` and use it in a few places * Remove unnecessary cursor setting (#1245) Should be using the default here. I was debugging and forgot to switch this back before committing. Signed-off-by: Christian Nunciato <c@nunciato.org> * Update the home page video (#1244) This is a slightly shorter version, with typing sections sped up slightly to better respect our visitors’ time. :smile: Signed-off-by: Christian Nunciato <c@nunciato.org> * API doc styling improvements (#1247) * Update API doc styling for Python Bring back the styles used for our Python API docs, convert to use Tailwind, and make further tweaks to make it look even better. For example, all definitions now look like code blocks and indentation and spacing is used to improve the hierarchy of the content. * Only emit the <h1>.Title</h1> if there is a .Title The generated Python API docs don't currently include front matter and therefore do not have a title. We should fix the Python docs gen to do that, but in the meantime, only emit `<h1>.Title</h1>` if the page has a `.Title`, to avoid an unnecessary gap at the top of the page. * Update _pygments.scss to select .highlight instead of .chroma The syntax highlighted code generated by Hugo looks like: ``` <div class="highlight"> <pre class="chroma"> <code class="language-foo"> ... </code> </pre> </div> ``` And our styles looks like: ``` .chroma .k { ... } .chroma .kc { ... } ... ``` This works good, but our generated Python docs, which uses Pygments to do the syntax highlighting, doesn't use `.chroma`, so it doesn't get any syntax highlighting currently, even though all the Pygments classes are there. This is true for our Node.js docs as well, although, based on how we generate the code for that currently, we could relatively easily update the templates to include a `.chroma` class. In all cases, the code that we want highlighted will have a `.highlight` class surrounding it, so just update our styles to select `.highlight` instead of `.chroma`. ``` .highlight .k { ... } .highlight .kc { ... } ... ``` * Update API doc styling for Node.js * Various mobile adjustments and cleanup (#1250) * Pull the hero and section nav into Tailwind "components" and apply them. * Adjust home-page video dimensions accordingly. * Add mobile x-padding to sections that hadn't gotten it yet. * Add an anchor exclusion to the head for the About page. * Fix mobile layout for the Support page. * Fix centering and item distribution on the About page. * Additional minor mobile-related adjustments as encountered. Signed-off-by: Christian Nunciato <c@nunciato.org> * Fix bug in lang chooser (#1249) If I've previously viewed a page in our docs with the language tabs, such as the Get Started guide, and I click the Python tab, that language choice will be persisted to a cookie. If I then visit our Node.js API docs, the lang chooser will see the saved value of "Python" and try to select that tab, hiding all other language snippets. But our Node.js API docs only contain JavaScript and TypeScript snippets, so the end result is that all snippets are hidden and no tab is selected. This change fixes that. If the value in the cookie does not exist in any of the tabs on the page, fallback to the default (JavaScript), otherwise fallback to the first tab that is available on the page. * More small fixes (#1254) * Make the header more responsive Adds padding to medium and above, and adjusts font size and spacing at medium width in order to accommodate the number of items we’re displaying currently. Also uses the full Pulumi logo, since we have room for that now, and adds a little color to the hamburger. Signed-off-by: Christian Nunciato <c@nunciato.org> * Bottom-align the image on the whitepaper layout Also removes the `header` selector from `_hero.scss` in order to reduce the specificity of the rule, allowing it to be overidden more easily with other Tailwind classnames. Signed-off-by: Christian Nunciato <c@nunciato.org> * Add team@pulumi link to the footer Signed-off-by: Christian Nunciato <c@nunciato.org> * Restore the newsroom and investors sections Somehow these got dropped! :scream: Signed-off-by: Christian Nunciato <c@nunciato.org> * Add hero background glows (#1257) Also deletes unused templates. Signed-off-by: Christian Nunciato <c@nunciato.org> * Hide scrollbars if not needed (#1256) * Improve Pricing page responsiveness, fix a few other small things (#1259) * Fix section link on the Why Pulumi page Signed-off-by: Christian Nunciato <c@nunciato.org> * Capitalize Kubernetes in copy Signed-off-by: Christian Nunciato <c@nunciato.org> * Adjust image sizes on Whitepaper page Properly size them on both mobile and desktop. Signed-off-by: Christian Nunciato <c@nunciato.org> * Fix paging on mobile Decrease padding to prevent overflow. Signed-off-by: Christian Nunciato <c@nunciato.org> * Improve Pricing page layout Signed-off-by: Christian Nunciato <c@nunciato.org> * Replace home page video with carousel (#1260) Signed-off-by: Christian Nunciato <c@nunciato.org> * Change Segment module to WWW (#1265) * Hook up new www.pulumi.com/staging stack to CI/CD (#1262) * Move older 'pulumi.io' stacks to infrastructure-old * Add new 'www.pulumi.com' infrastructure folder * Scripts to hook up to CI/CD * Switch back to using generic Travis worker * Add alias to CDN for staging.pulumi.io * Remove alias to staging.pulumi.io * Do not use named profiles for deployments There's an issue today where named profiles which use `credential_source=Environment` don't actually behave correctly with the assume-role tool. Instead of actually assuming the role, it just uses the credentials in the environment, which is not exactly what you want. For now, explicitly set the ARN we want to assume, instead of indirecting across a named profile. * Remove CloudFront alias entirely * Add hover menu (#1266) Signed-off-by: Christian Nunciato <c@nunciato.org> * Hook up new www.pulumi.com/production stack to CI/CD (#1267) * Hook up new www.pulumi.com/production stack to CI/CD * Correct Makefile syntax * Migrate blog posts as of 7/2 (#1268) * Fix Makefile syntax * Fix spelling error ::sigh::
2019-07-02 16:30:33 -07:00
---
Pulumi allows cloud developers to use programming languages like
JavaScript, TypeScript and Python to define and deploy cloud
infrastructure and applications. To do this, Pulumi exposes a notion of
[Outputs](/docs/concepts/inputs-outputs/)
GREAT WEBSITE MIGRATION OF 2018 (#1269) * Move content into docs/content * Make navigation and doc generation work Signed-off-by: Christian Nunciato <c@nunciato.org> * Make search work Signed-off-by: Christian Nunciato <c@nunciato.org> * Move docs-specific layouts into layouts/docs Signed-off-by: Christian Nunciato <c@nunciato.org> * Move docs partials into layouts/partials/docs Signed-off-by: Christian Nunciato <c@nunciato.org> * Share a common header and footer Signed-off-by: Christian Nunciato <c@nunciato.org> * Add product & pricing pages, modify main nav Signed-off-by: Christian Nunciato <c@nunciato.org> * Bring images under assets, docs images under assets/images/docs Signed-off-by: Christian Nunciato <c@nunciato.org> * Link to the docs home page, fix image ref Signed-off-by: Christian Nunciato <c@nunciato.org> * Add containers, serverless, kubernetes topics Signed-off-by: Christian Nunciato <c@nunciato.org> * Add careers Signed-off-by: Christian Nunciato <c@nunciato.org> * Add compete, compete -> migrate Signed-off-by: Christian Nunciato <c@nunciato.org> * About, contact Signed-off-by: Christian Nunciato <c@nunciato.org> * Add legal Signed-off-by: Christian Nunciato <c@nunciato.org> * Add product Signed-off-by: Christian Nunciato <c@nunciato.org> * Add partner content Signed-off-by: Christian Nunciato <c@nunciato.org> * Add webinar Signed-off-by: Christian Nunciato <c@nunciato.org> * Add why-pulumi Signed-off-by: Christian Nunciato <c@nunciato.org> * Add GitHub redirect, support Signed-off-by: Christian Nunciato <c@nunciato.org> * Add blog * Add blog - update post frontmatter * Update content/_index.md Co-Authored-By: Justin Van Patten <jvp@justinvp.com> * Remove drafts & redundant fonts, move asset dirs up a level Signed-off-by: Christian Nunciato <c@nunciato.org> * Reconcile blog navigation Signed-off-by: Christian Nunciato <c@nunciato.org> * Migrate some blog content (#1147) * Reconcile www, blog and docs footer items (#1141) Signed-off-by: Christian Nunciato <c@nunciato.org> * Clean up blog layout (#1148) * Migrate more blog posts (#1157) * Replace Bootstrap with TailwindCSS * Add Tailwind * Create a config directory under assets, move PostCSS and Tailwind configs into it * Remove Bootstrap Sass and JS referemce * Refactor the header, base template, and footer to use Tailwind * Pull TOC Sass into its own partial Signed-off-by: Christian Nunciato <c@nunciato.org> * Refactor the docs home page Signed-off-by: Christian Nunciato <c@nunciato.org> * Refactor docs single, list and section layouts Signed-off-by: Christian Nunciato <c@nunciato.org> * Refactor quickstart-clouds partial Signed-off-by: Christian Nunciato <c@nunciato.org> * Reposition config items to fix syntax highlighting Signed-off-by: Christian Nunciato <c@nunciato.org> * Replace syntax CSS theme with Monokai Signed-off-by: Christian Nunciato <c@nunciato.org> * Add a dark blue for links Signed-off-by: Christian Nunciato <c@nunciato.org> * Add the beginnings of Sass color settings Signed-off-by: Christian Nunciato <c@nunciato.org> * Add a Sass file for langchoose Signed-off-by: Christian Nunciato <c@nunciato.org> * Give no-select its own Sass also, since it’s a partial Signed-off-by: Christian Nunciato <c@nunciato.org> * Give docs single and list templates more width for main content Signed-off-by: Christian Nunciato <c@nunciato.org> * Add some padding to the TOC, since we don’t have proper gutters yet Signed-off-by: Christian Nunciato <c@nunciato.org> * Fix button on Quickstart home page Signed-off-by: Christian Nunciato <c@nunciato.org> * TOC styles Signed-off-by: Christian Nunciato <c@nunciato.org> * Quickstart clouds Signed-off-by: Christian Nunciato <c@nunciato.org> * Padding to left and right columns Signed-off-by: Christian Nunciato <c@nunciato.org> * Black for TOC Signed-off-by: Christian Nunciato <c@nunciato.org> * Refactor docs/aws to use its own layouts Signed-off-by: Christian Nunciato <c@nunciato.org> * Fix the AWS tech partner image Signed-off-by: Christian Nunciato <c@nunciato.org> * Adjust AWS layouts Signed-off-by: Christian Nunciato <c@nunciato.org> * Move docs-home markup into a layout Signed-off-by: Christian Nunciato <c@nunciato.org> * Format the mini-toc Signed-off-by: Christian Nunciato <c@nunciato.org> * Reduce subhead sizes a bit Signed-off-by: Christian Nunciato <c@nunciato.org> * Remove snowflake styles Signed-off-by: Christian Nunciato <c@nunciato.org> * Extract some Sass partials Signed-off-by: Christian Nunciato <c@nunciato.org> * Define initial purple and blue palettes, use numbered colors instead Signed-off-by: Christian Nunciato <c@nunciato.org> * Refactor blog templates Signed-off-by: Christian Nunciato <c@nunciato.org> * Make blog summary a partial, style pagination Signed-off-by: Christian Nunciato <c@nunciato.org> * Fix expanded URLs Signed-off-by: Christian Nunciato <c@nunciato.org> * Rename Documentation to Reference Signed-off-by: Christian Nunciato <c@nunciato.org> * A smattering of minor adjustments Signed-off-by: Christian Nunciato <c@nunciato.org> * Selection state for tags Signed-off-by: Christian Nunciato <c@nunciato.org> * Delete more Bootstrap Signed-off-by: Christian Nunciato <c@nunciato.org> * Comment the banner Signed-off-by: Christian Nunciato <c@nunciato.org> * Restore footer links Signed-off-by: Christian Nunciato <c@nunciato.org> * Legal layout Signed-off-by: Christian Nunciato <c@nunciato.org> * Remove unused layout Signed-off-by: Christian Nunciato <c@nunciato.org> * Refactor careers page Signed-off-by: Christian Nunciato <c@nunciato.org> * Use top-level URLs for legal docs Signed-off-by: Christian Nunciato <c@nunciato.org> * Add RSS for the blog (#1170) * Add RSS for the blog * Cleanup team data (#1195) * Cleanup team data * Add missing newlines at EOF * Blog content as of 6/16 (#1196) * Blog content layout tweaks * Migrated blog content (as of Sun 6/16) * Address PR feedback, replace links to pulumi.io * Add fusion stack Any changes to the `fusion` branch will now be deployed to https://fusion.pulumi.io/. * Fix broken links * Fix broken images in fusion branch (#1207) Deletes unnecessary uses of `BaseURL`. In a small number of cases, where we want to emit an absolute URL that includes the `BaseURL`, use the `absURL` function instead, which is smart about handling missing/extra slashes. * Integrate www content (#1208) Signed-off-by: Christian Nunciato <c@nunciato.org> * Highlight currently selected section tab (#1216) * Remove unused partials (#1215) These are no longer referenced, so they can be removed. Signed-off-by: Christian Nunciato <c@nunciato.org> * Blog content as of 6/24 (#1218) * Port running-containers-in-aws-the-lowdown-ecs-fargate-and-eks * Port building-and-publishing-docker-images-to-a-private-amazon-ecr-repository * Port happy-birthday-to-pulumi-open-source * Commit updates to package-lock.json * Link cleanups and other fixes * Remove 'wip' tag * Restore meta_* fields, tidy up some frontmatter (#1214) Signed-off-by: Christian Nunciato <c@nunciato.org> * Add search (#1217) Signed-off-by: Christian Nunciato <c@nunciato.org> * Hide `.language-prologue-*` by default (#1212) So they all don't initially flash as being visible before all but the selected language are hidden. Port from `_pulumi.scss`. * Limit team members to those with status “active” (#1219) Signed-off-by: Christian Nunciato <c@nunciato.org> * Fix links to datadog provider * Remove top margin from code snippets under lang tabs (#1223) * Update MBR DNA logo (#1222) * Add links to cloud logos (#1221) And use `logo-aws_white.png` for AWS * Remove unnecessary aliases (#1210) Now that we'll be hosting the docs on a new domain, there's no need to maintain these aliases. The old site hosted at https://pulumi.io will have redirects from the old aliases to the new location on the new site. * Pricing page updates (#1224) * Add swooshes to the home, pricing and webinar pages. * Replace “tech” PNGs for GitHub, GitLab, Atlassian and SAML with SVGs, and add an email SVG, in order to align all of their images in the pricing grid. * Add a “See plan details” link above the pricing grid. * Update Font Awesome to version 5.8.1 (to match what's in use on www today) in order to pull in the infinity icons used in the pricing grid. * Align CTA buttons horizontally in adjacent boxes containing content of varying heights. * Fix duplicate links on the home and product pages. Signed-off-by: Christian Nunciato <c@nunciato.org> * Update API docs (#1227) * Update tsdocgen paths * Updated API docs * Fix broken images (#1228) Remove unnecessary `{{ .Site.BaseURL }}` prefix from image URLs. * Fix Hugo build warning about non-relative ref/relref page reference (#1229) * Fix page titles and errant anchors (#1226) * Prevent anchors on the home page * Fix page titles Signed-off-by: Christian Nunciato <c@nunciato.org> * Add a robots.txt file (#1225) This change adds a robots.txt template authorizing seach-engine indexing for all pages of the production site. It assumes that all non-production builds will override the `baseURL` configuration property with something other than `https://pulumi.com/`. Signed-off-by: Christian Nunciato <c@nunciato.org> * Blog content fixes (#1231) * Correct post dates, titles * Revert to previous tags * Unify tags, adjust for display * Replace short, social summaries with longer ones * Use a fixed height for the utility bar (#1232) When the GitHub widget loads asynchronously and pops into view, it causes the whole page to shift downward a few pixels, because the widget is taller than the links beside it. Applying an explicit hight to the utility bar fixes this. Signed-off-by: Christian Nunciato <c@nunciato.org> * Fix TOC expansion for the tour (#1234) We're very likely going to remove the tour and disperse its content elsewhere, but in the meantime, fix the TOC expansion for "Beyond the Basics" items. * Add syntax highlighing to layout templates (#1238) This change adds a partial for highlighting code snippets in layouts. Signed-off-by: Christian Nunciato <c@nunciato.org> * Add home-page video (#1240) Also makes a few slight adjustments to improve mobile layout on the home page. Signed-off-by: Christian Nunciato <c@nunciato.org> * Blog layout and styling improvements (#1237) * Use explicit code blcoks with language * Fix sort order for Author and Tag listings * Make sidebar toggleable on mobile * Resize "poster" image for blog listings * Crop photos to be square * Add posted date, post tags to blog footer * Add recent posts lists to sidebar * Add syntax highlighting to some missed posts * Fix Hugo build warning * Adjust sidebar styling * Cleanup the /docs page (#1239) * Cleanup /docs/aws layouts to match other docs sections * Cleanup /docs pages - Add left nav - Make /docs page look slightly less like a "homepage" - Add top-level "Get Started" and "Reference" headings to left nav * Add `.btn-secondary` and use it in a few places * Remove unnecessary cursor setting (#1245) Should be using the default here. I was debugging and forgot to switch this back before committing. Signed-off-by: Christian Nunciato <c@nunciato.org> * Update the home page video (#1244) This is a slightly shorter version, with typing sections sped up slightly to better respect our visitors’ time. :smile: Signed-off-by: Christian Nunciato <c@nunciato.org> * API doc styling improvements (#1247) * Update API doc styling for Python Bring back the styles used for our Python API docs, convert to use Tailwind, and make further tweaks to make it look even better. For example, all definitions now look like code blocks and indentation and spacing is used to improve the hierarchy of the content. * Only emit the <h1>.Title</h1> if there is a .Title The generated Python API docs don't currently include front matter and therefore do not have a title. We should fix the Python docs gen to do that, but in the meantime, only emit `<h1>.Title</h1>` if the page has a `.Title`, to avoid an unnecessary gap at the top of the page. * Update _pygments.scss to select .highlight instead of .chroma The syntax highlighted code generated by Hugo looks like: ``` <div class="highlight"> <pre class="chroma"> <code class="language-foo"> ... </code> </pre> </div> ``` And our styles looks like: ``` .chroma .k { ... } .chroma .kc { ... } ... ``` This works good, but our generated Python docs, which uses Pygments to do the syntax highlighting, doesn't use `.chroma`, so it doesn't get any syntax highlighting currently, even though all the Pygments classes are there. This is true for our Node.js docs as well, although, based on how we generate the code for that currently, we could relatively easily update the templates to include a `.chroma` class. In all cases, the code that we want highlighted will have a `.highlight` class surrounding it, so just update our styles to select `.highlight` instead of `.chroma`. ``` .highlight .k { ... } .highlight .kc { ... } ... ``` * Update API doc styling for Node.js * Various mobile adjustments and cleanup (#1250) * Pull the hero and section nav into Tailwind "components" and apply them. * Adjust home-page video dimensions accordingly. * Add mobile x-padding to sections that hadn't gotten it yet. * Add an anchor exclusion to the head for the About page. * Fix mobile layout for the Support page. * Fix centering and item distribution on the About page. * Additional minor mobile-related adjustments as encountered. Signed-off-by: Christian Nunciato <c@nunciato.org> * Fix bug in lang chooser (#1249) If I've previously viewed a page in our docs with the language tabs, such as the Get Started guide, and I click the Python tab, that language choice will be persisted to a cookie. If I then visit our Node.js API docs, the lang chooser will see the saved value of "Python" and try to select that tab, hiding all other language snippets. But our Node.js API docs only contain JavaScript and TypeScript snippets, so the end result is that all snippets are hidden and no tab is selected. This change fixes that. If the value in the cookie does not exist in any of the tabs on the page, fallback to the default (JavaScript), otherwise fallback to the first tab that is available on the page. * More small fixes (#1254) * Make the header more responsive Adds padding to medium and above, and adjusts font size and spacing at medium width in order to accommodate the number of items we’re displaying currently. Also uses the full Pulumi logo, since we have room for that now, and adds a little color to the hamburger. Signed-off-by: Christian Nunciato <c@nunciato.org> * Bottom-align the image on the whitepaper layout Also removes the `header` selector from `_hero.scss` in order to reduce the specificity of the rule, allowing it to be overidden more easily with other Tailwind classnames. Signed-off-by: Christian Nunciato <c@nunciato.org> * Add team@pulumi link to the footer Signed-off-by: Christian Nunciato <c@nunciato.org> * Restore the newsroom and investors sections Somehow these got dropped! :scream: Signed-off-by: Christian Nunciato <c@nunciato.org> * Add hero background glows (#1257) Also deletes unused templates. Signed-off-by: Christian Nunciato <c@nunciato.org> * Hide scrollbars if not needed (#1256) * Improve Pricing page responsiveness, fix a few other small things (#1259) * Fix section link on the Why Pulumi page Signed-off-by: Christian Nunciato <c@nunciato.org> * Capitalize Kubernetes in copy Signed-off-by: Christian Nunciato <c@nunciato.org> * Adjust image sizes on Whitepaper page Properly size them on both mobile and desktop. Signed-off-by: Christian Nunciato <c@nunciato.org> * Fix paging on mobile Decrease padding to prevent overflow. Signed-off-by: Christian Nunciato <c@nunciato.org> * Improve Pricing page layout Signed-off-by: Christian Nunciato <c@nunciato.org> * Replace home page video with carousel (#1260) Signed-off-by: Christian Nunciato <c@nunciato.org> * Change Segment module to WWW (#1265) * Hook up new www.pulumi.com/staging stack to CI/CD (#1262) * Move older 'pulumi.io' stacks to infrastructure-old * Add new 'www.pulumi.com' infrastructure folder * Scripts to hook up to CI/CD * Switch back to using generic Travis worker * Add alias to CDN for staging.pulumi.io * Remove alias to staging.pulumi.io * Do not use named profiles for deployments There's an issue today where named profiles which use `credential_source=Environment` don't actually behave correctly with the assume-role tool. Instead of actually assuming the role, it just uses the credentials in the environment, which is not exactly what you want. For now, explicitly set the ARN we want to assume, instead of indirecting across a named profile. * Remove CloudFront alias entirely * Add hover menu (#1266) Signed-off-by: Christian Nunciato <c@nunciato.org> * Hook up new www.pulumi.com/production stack to CI/CD (#1267) * Hook up new www.pulumi.com/production stack to CI/CD * Correct Makefile syntax * Migrate blog posts as of 7/2 (#1268) * Fix Makefile syntax * Fix spelling error ::sigh::
2019-07-02 16:30:33 -07:00
that track how the outputs of one cloud resource are used and
transformed as part of creating another cloud resource.
These `Output` types are heavily used in many Pulumi application. They
are the way that Resources expose their values and are commonly used to
pass values from one Resource to another. `Outputs` are also a key part
of how Pulumi tracks dependencies between resources. In fact, Outputs
are similar to promises/futures that you may be familiar with from other
programming models but also carry along dependency information.
We've heard a lot of feedback about how Outputs can lead
otherwise-simple code to become hard to write and reason about. So we've
looked into what we can do to significantly simplify the experience
working with Outputs - making the user experience simpler while
maintaining the rich dependency tracking and type checking that Pulumi
has always provided for cloud infrastructure.
#### Simplifying Outputs
In 0.17.0 of the `@pulumi/pulumi` package, we've made most common
patterns for working with Outputs much simpler.
Prior to this release of `@pulumi/pulumi` package, it was fairly common
to have to write code like the following:
{{< highlight JavaScript >}}
const cert = new aws.acm.Certificate("cert", {
domainName: "example.com",
validationMethod: "DNS",
});
const certValidation = new aws.route53.Record("cert_validation", {
records: [cert.domainValidationOptions.apply(domainValidationOptions => domainValidationOptions[0].resourceRecordValue)],
ttl: 60,
type: cert.domainValidationOptions.apply(domainValidationOptions => domainValidationOptions[0].resourceRecordType),
});
{{< /highlight >}}
In particular, creating the aws.route53.Record involves a fair amount of
complexity with those arrow functions. i.e.:
{{< highlight JavaScript >}}
records: [cert.domainValidationOptions.apply(domainValidationOptions => domainValidationOptions[0].resourceRecordValue)],
ttl: 60,
type: cert.domainValidationOptions.apply(domainValidationOptions => domainValidationOptions[0].resourceRecordType),
zoneId: zone.apply(zone => zone.id),
{{< /highlight >}}
Yikes! This is so verbose, it doesn't even fit on the width of the page!
The idea of the `.apply` function is similar to `Promise.then`. It
allows one to pass a piece of code that will be applied to the
underlying value once it becomes available (after the corresponding
cloud resource is created or updated) and will return an `Output` that
then points to the transformed underlying value. Importantly, the new
`Output` will still track dependency information properly. In the above
example the `aws.route53.Record` will know that it depends on `cert`,
even though the Certificate resource is not itself passed directly do
the constructor.
Unfortunately, while `.apply` gives a lot of power and flexibility, it
is also somewhat verbose and clunky for describing such a simple
concept. Fortunately, we found a way to improve the situation greatly.
This realization came about from great work done in our Python package.
First, before diving into the low level details, let's first see what
the above code would now look like in 0.17.0:
{{< highlight JavaScript >}}
const certValidation = new aws.route53.Record("cert_validation", {
records: [cert.domainValidationOptions[0].resourceRecordValue],
ttl: 60,
type: cert.domainValidationOptions[0].resourceRecordType,
zoneId: zone.id,
});
{{< /highlight >}}
That's a lot nicer than before! The following improvements happened:
1. There's no more callbacks!
2. There's no need for a repetitive lambda parameter (which might
conflict with some other name in scope).
3. The code is just pure simple idiomatic JavaScript/TypeScript that
clearly conveys its intent.
Importantly, no information has been lost here. The exact same
dependency information flows along here like it did before. And, thanks
to TypeScript's flexible type system, the above is totally typesafe and
will let you know the right types of things and will still error if you
happen to make mistakes.
So, how was this done? Well, the core part of the change is thanks to a
little-known feature of JavaScript:
[Proxies](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Proxy).
JavaScript proxies allow libraries to return objects that intercept and
override many facets of how JavaScript works at runtime. There are many
things a Proxy lets you control, however for our needs the most
important bit was that it allows you to override how member-lookup
works. In other words, when the code contains `someProxy.someMember` the
proxy actually gets a chance to determine what should happen and what
someMember should actually return! With that flexible interception point
available, we actually took our core Output type and made it into a
Proxy. We then added the right interception code so that if the code
contains someOutput.someMember that that gets translated exactly into
`someOutput.apply(o => o.someMember)`.
This also works just fine for array-accesses (which are just
property-lookups from JavaScript's perspective). In other words, at
runtime, the member-lookup form and the `.apply` form will be equivalent
(except that the former is so much nicer to write!). This is why, for
example,
`certCertificate.domainValidationOptions[0].resourceRecordValue` will
have the correct value (with all the right dependency information). At
runtime it really will be equivalent to the original
`certCertificate.apply(certCertificate => certCertificate.domainValidationOptions[0].resourceRecordValue)`
form.
Now, while this was fairly easy to get working at runtime from a
JavaScript perspective, it was a little more challenging to figure out
how to make this work in TypeScript's typing system. For example, if you
had a value like so:
```javascript
const cert: Output<{ domainValidationOptions: pulumi.Output<{ domainName: string, resourceRecordName: string, resourceRecordType: string, resourceRecordValue: string }[]> }>;
const firstOption: Output<{ domainName: string, resourceRecordName: string, resourceRecordType: string, resourceRecordValue: string }> = cert[0];
const domainName = firstOption.domainName;
```
Then how does TypeScript know that `cert` should have a property on it
called `domainValidationOptions`? And how can it know that
`domainValidationOptions` can be indexed into? And how would it know
that once indexed, that `Output` would have a `domainName` property?
Clearly, these are all `Outputs`. Yet, each `Output<...>` has a
different set of properties exposed off of it!
To do this required taking advantage of some very interesting and
advanced parts of TypeScript's type system. If this is a part of
TypeScript that interests you, or you just want to see how we did this,
you can dive in deep into the source
[here](https://github.com/pulumi/pulumi/blob/7d7e104ee3184d1244ea3517ab5cae5f52170dba/sdk/nodejs/output.ts#L624-L631)!
And, if you want to see how we did the actual runtime Proxy work, that
code is self-contained
[here](https://github.com/pulumi/pulumi/blob/7d7e104ee3184d1244ea3517ab5cae5f52170dba/sdk/nodejs/output.ts#L220-L282).
Thanks to TypeScript's advanced type-system, these types can be properly
expressed and the entire tooling ecosystem understands them. For
example, in VSCode, if you try to write code like the above, you'll see
all the expected properties with the expected types:
![Completion Lists](./comp-list.png)
## Conclusion
We definitely hope these changes to `@pulumi/pulumi` in 0.17.0 will make
the programming experience simpler and smoother for many common use
cases. And, if you've ever wanted to do some fancy tricks like what
we're doing here, these updates can show you how you too can approach
some of these advanced techniques for both JavaScript and TypeScript!