<script type="application/json" id="HeaderNotice-apollo-state-992f9e1e-c79c-43fb-96a9-089d825fa346">{}</script> <!-- glamorIds: 7 --> <script type="application/json" id="HeaderNotice-glamor-992f9e1e-c79c-43fb-96a9-089d825fa346">["1htug8r","1yodi52","iepywa","x5hg3h","u0iaox","9ilv8v","gwph6j"]</script> <style>@-webkit-keyframes animation_1htug8r{to{transform:rotate(360deg);-webkit-transform:rotate(360deg);}}@-moz-keyframes animation_1htug8r{to{transform:rotate(360deg);-webkit-transform:rotate(360deg);}}@-o-keyframes animation_1htug8r{to{transform:rotate(360deg);-webkit-transform:rotate(360deg);}}@keyframes animation_1htug8r{to{transform:rotate(360deg);-webkit-transform:rotate(360deg);}}@-webkit-keyframes animation_1yodi52{0%{background-position:0 0;}100%{background-position:100em 0;}}@-moz-keyframes animation_1yodi52{0%{background-position:0 0;}100%{background-position:100em 0;}}@-o-keyframes animation_1yodi52{0%{background-position:0 0;}100%{background-position:100em 0;}}@keyframes animation_1yodi52{0%{background-position:0 0;}100%{background-position:100em 0;}}@-webkit-keyframes animation_iepywa{0%, 100%{opacity:0;}50%{opacity:1;}}@-moz-keyframes animation_iepywa{0%, 100%{opacity:0;}50%{opacity:1;}}@-o-keyframes animation_iepywa{0%, 100%{opacity:0;}50%{opacity:1;}}@keyframes animation_iepywa{0%, 100%{opacity:0;}50%{opacity:1;}}@-webkit-keyframes animation_x5hg3h{100%{stroke-dashoffset:0;}}@-moz-keyframes animation_x5hg3h{100%{stroke-dashoffset:0;}}@-o-keyframes animation_x5hg3h{100%{stroke-dashoffset:0;}}@keyframes animation_x5hg3h{100%{stroke-dashoffset:0;}}@-webkit-keyframes animation_u0iaox{0%, 100%{transform:none;-webkit-transform:none;}50%{transform:scale3d(1.1, 1.1, 1);-webkit-transform:scale3d(1.1, 1.1, 1);}}@-moz-keyframes animation_u0iaox{0%, 100%{transform:none;-webkit-transform:none;}50%{transform:scale3d(1.1, 1.1, 1);-webkit-transform:scale3d(1.1, 1.1, 1);}}@-o-keyframes animation_u0iaox{0%, 100%{transform:none;-webkit-transform:none;}50%{transform:scale3d(1.1, 1.1, 1);-webkit-transform:scale3d(1.1, 1.1, 1);}}@keyframes animation_u0iaox{0%, 100%{transform:none;-webkit-transform:none;}50%{transform:scale3d(1.1, 1.1, 1);-webkit-transform:scale3d(1.1, 1.1, 1);}}@-webkit-keyframes animation_9ilv8v{100%{box-shadow:inset 0px 0px 0px 30px #068dfe;}}@-moz-keyframes animation_9ilv8v{100%{box-shadow:inset 0px 0px 0px 30px #068dfe;}}@-o-keyframes animation_9ilv8v{100%{box-shadow:inset 0px 0px 0px 30px #068dfe;}}@keyframes animation_9ilv8v{100%{box-shadow:inset 0px 0px 0px 30px #068dfe;}}.css-gwph6j,[data-css-gwph6j]{border-radius:2px;background-size:200% 100%;width:auto;height:auto;animation:20s animation_1yodi52 0s linear infinite;background:-webkit-linear-gradient(to right, #f1f1f1 0%, #fbfbfb 50%, #f1f1f1 100%); background: -moz-linear-gradient(to right, #f1f1f1 0%, #fbfbfb 50%, #f1f1f1 100%); background: linear-gradient(to right, #f1f1f1 0%, #fbfbfb 50%, #f1f1f1 100%);-webkit-animation:20s animation_1yodi52 0s linear infinite;}</style> <div id="HeaderNotice-react-component-992f9e1e-c79c-43fb-96a9-089d825fa346" data-ssr="true" ><div style="z-index:1000" class="css-gwph6j"></div></div> <script> renderComponent('HeaderNotice','HeaderNotice-react-component-992f9e1e-c79c-43fb-96a9-089d825fa346','HeaderNotice-apollo-state-992f9e1e-c79c-43fb-96a9-089d825fa346','HeaderNotice-glamor-992f9e1e-c79c-43fb-96a9-089d825fa346', 'apollo','{"mobile":false}'); </script> <script type="application/json" id="Stackup-apollo-state-f8f92b7a-a991-49c6-81de-c37a73166cd9">{"Tool:101231773700412232":{"id":"101231773700412232","legacyThirdPartyId":"663","slug":"ansible","contactEnabled":true,"contactButtonText":"Track Ansible Metrics And Events In Datadog","contactFlow":{"type":"json","json":{"links":[{"url":"https://www.datadoghq.com/dg/monitor/ts/lpgtsansible/?utm_source=advertisement&utm_medium=review-site&utm_campaign=dg-stackshare-coreplatform-ww-ansible-tshirt","type":"website"}],"steps":["direct_link"]}},"name":"Ansible","packageManager":null,"type":"Tool","imageUrl":"https://img.stackshare.io/service/663/ElOjna20.png","thumbUrl":"https://img.stackshare.io/service/663/thumb_ElOjna20.png","thumbRetinaUrl":"https://img.stackshare.io/service/663/thumb_retina_ElOjna20.png","canonicalUrl":"/ansible","stacks":16917,"votes":1309,"jobs":2986,"followersCount":13621,"following":false,"latestVersionNumber":"v2.5.0 Beta 1","license":{"type":"id","generated":true,"id":"$Tool:101231773700412232.license","typename":"ToolLicense"},"dependentPackagesCount":0,"membersCount":0,"vulnerabilities":{"type":"id","generated":true,"id":"$Tool:101231773700412232.vulnerabilities","typename":"VulnerabilityConnection"},"hackernewsOnlineMentionsCount":484,"redditOnlineMentionsCount":2036,"stackOverflowOnlineMentionsCount":21761,"githubForksCount":22743,"githubStarsCount":55656,"githubUpdatedAt":"2022-12-06T15:25:14Z","description":"Ansible is an IT automation tool. It can configure systems, deploy software, and orchestrate more advanced IT tasks such as continuous deployments or zero downtime rolling updates. Ansible鈥檚 goals are foremost those of simplicity and maximum ease of use.","pricingUrl":"http://www.ansible.com/pricing","popularity":39377.1,"path":"/ansible","pressUrl":"https://github.com/ansible/ansible","relatedStackupsCount":72,"layer":{"type":"id","generated":true,"id":"$Tool:101231773700412232.layer","typename":"Layer"},"category":{"type":"id","generated":true,"id":"$Tool:101231773700412232.category","typename":"Category"},"function":{"type":"id","generated":true,"id":"$Tool:101231773700412232.function","typename":"Function"},"cachedPros":{"type":"json","json":{"count":31,"edges":[{"node":{"id":"101978468588648473","text":"Agentless","upvoted":false,"__typename":"Reason","upvotesCount":282},"__typename":"ReasonEdge"},{"node":{"id":"101978468219521454","text":"Great configuration ","upvoted":false,"__typename":"Reason","upvotesCount":208},"__typename":"ReasonEdge"},{"node":{"id":"101978468588434049","text":"Simple","upvoted":false,"__typename":"Reason","upvotesCount":197},"__typename":"ReasonEdge"},{"node":{"id":"101978468588728585","text":"Powerful","upvoted":false,"__typename":"Reason","upvotesCount":175},"__typename":"ReasonEdge"},{"node":{"id":"101978468602918538","text":"Easy to learn","upvoted":false,"__typename":"Reason","upvotesCount":153},"__typename":"ReasonEdge"},{"node":{"id":"101978468664752346","text":"Flexible","upvoted":false,"__typename":"Reason","upvotesCount":67},"__typename":"ReasonEdge"},{"node":{"id":"101978468360795426","text":"Doesn't get in the way of getting s--- done","upvoted":false,"__typename":"Reason","upvotesCount":54},"__typename":"ReasonEdge"},{"node":{"id":"101978468614870343","text":"Makes sense","upvoted":false,"__typename":"Reason","upvotesCount":34},"__typename":"ReasonEdge"},{"node":{"id":"101978468770749027","text":"Super efficient and flexible","upvoted":false,"__typename":"Reason","upvotesCount":30},"__typename":"ReasonEdge"},{"node":{"id":"101978468972751291","text":"Powerful ","upvoted":false,"__typename":"Reason","upvotesCount":27},"__typename":"ReasonEdge"},{"node":{"id":"101978469364941605","text":"Dynamic Inventory","upvoted":false,"__typename":"Reason","upvotesCount":11},"__typename":"ReasonEdge"},{"node":{"id":"101978469677112314","text":"Backed by Red Hat","upvoted":false,"__typename":"Reason","upvotesCount":9},"__typename":"ReasonEdge"},{"node":{"id":"101978469300873735","text":"Works with AWS","upvoted":false,"__typename":"Reason","upvotesCount":7},"__typename":"ReasonEdge"},{"node":{"id":"101978469364822304","text":"Cloud Oriented","upvoted":false,"__typename":"Reason","upvotesCount":6},"__typename":"ReasonEdge"},{"node":{"id":"101978468899144478","text":"Easy to maintain","upvoted":false,"__typename":"Reason","upvotesCount":6},"__typename":"ReasonEdge"},{"node":{"id":"101978469568140487","text":"Because SSH","upvoted":false,"__typename":"Reason","upvotesCount":4},"__typename":"ReasonEdge"},{"node":{"id":"101978468860737991","text":"Multi language ","upvoted":false,"__typename":"Reason","upvotesCount":4},"__typename":"ReasonEdge"},{"node":{"id":"101978469132223216","text":"Easy","upvoted":false,"__typename":"Reason","upvotesCount":4},"__typename":"ReasonEdge"},{"node":{"id":"101978469288395754","text":"Simple ","upvoted":false,"__typename":"Reason","upvotesCount":4},"__typename":"ReasonEdge"},{"node":{"id":"101978469577798313","text":"Procedural or declarative, or both","upvoted":false,"__typename":"Reason","upvotesCount":4},"__typename":"ReasonEdge"},{"node":{"id":"101978469694785891","text":"Simple and powerful","upvoted":false,"__typename":"Reason","upvotesCount":4},"__typename":"ReasonEdge"},{"node":{"id":"101978469637197581","text":"Consistency","upvoted":false,"__typename":"Reason","upvotesCount":3},"__typename":"ReasonEdge"},{"node":{"id":"101978469743281766","text":"Vagrant provisioner","upvoted":false,"__typename":"Reason","upvotesCount":3},"__typename":"ReasonEdge"},{"node":{"id":"101978469403886273","text":"Debugging is simple","upvoted":false,"__typename":"Reason","upvotesCount":2},"__typename":"ReasonEdge"},{"node":{"id":"101978469869043655","text":"Fast as hell","upvoted":false,"__typename":"Reason","upvotesCount":2},"__typename":"ReasonEdge"},{"node":{"id":"101978469953086713","text":"Well-documented","upvoted":false,"__typename":"Reason","upvotesCount":2},"__typename":"ReasonEdge"},{"node":{"id":"101978469789333985","text":"Merge hash to get final configuration similar to hiera","upvoted":false,"__typename":"Reason","upvotesCount":2},"__typename":"ReasonEdge"},{"node":{"id":"101978468826657694","text":"Masterless","upvoted":false,"__typename":"Reason","upvotesCount":2},"__typename":"ReasonEdge"},{"node":{"id":"108687311175220624","text":"Manage any OS","upvoted":false,"__typename":"Reason","upvotesCount":1},"__typename":"ReasonEdge"},{"node":{"id":"106981614014916876","text":"Certified Content","upvoted":false,"__typename":"Reason","upvotesCount":1},"__typename":"ReasonEdge"},{"node":{"id":"104840157660774288","text":"Work on windows, but difficult to manage","upvoted":false,"__typename":"Reason","upvotesCount":1},"__typename":"ReasonEdge"}],"pageInfo":{"endCursor":"MzE","__typename":"PageInfo","hasNextPage":false},"__typename":"ReasonConnection"}},"cachedCons":{"type":"json","json":{"count":6,"edges":[{"node":{"id":"103408331497483974","text":"Dangerous","upvoted":false,"__typename":"Reason","upvotesCount":8},"__typename":"ReasonEdge"},{"node":{"id":"101978470182373883","text":"Hard to install","upvoted":false,"__typename":"Reason","upvotesCount":5},"__typename":"ReasonEdge"},{"node":{"id":"102746465942065076","text":"Doesn't Run on Windows","upvoted":false,"__typename":"Reason","upvotesCount":3},"__typename":"ReasonEdge"},{"node":{"id":"103408330519792977","text":"Bloated","upvoted":false,"__typename":"Reason","upvotesCount":3},"__typename":"ReasonEdge"},{"node":{"id":"101978470045353097","text":"Backward compatibility","upvoted":false,"__typename":"Reason","upvotesCount":3},"__typename":"ReasonEdge"},{"node":{"id":"103408332254998875","text":"No immutable infrastructure","upvoted":false,"__typename":"Reason","upvotesCount":2},"__typename":"ReasonEdge"}],"pageInfo":{"endCursor":"Ng","__typename":"PageInfo","hasNextPage":false},"__typename":"ReasonConnection"}},"privateStacks({\"first\":7})":{"type":"id","generated":true,"id":"$Tool:101231773700412232.privateStacks({\"first\":7})","typename":"StackConnection"},"teams({\"first\":7})":{"type":"id","generated":true,"id":"$Tool:101231773700412232.teams({\"first\":7})","typename":"TeamConnection"},"cachedCompanyStacksUsing":{"type":"json","json":{"count":1840,"edges":[{"node":{"owner":{"name":"Udemy","imageUrl":"https://img.stackshare.io/company/365/default_139b6882a2de6f1ba5f36ab52b6180c3cd08f043.png","thumbUrl":"https://img.stackshare.io/company/365/thumb_139b6882a2de6f1ba5f36ab52b6180c3cd08f043.png","__typename":"Company"},"__typename":"Stack","canonicalUrl":"/udemy/udemy"},"__typename":"StackEdge"},{"node":{"owner":{"name":"LaunchDarkly","imageUrl":"https://img.stackshare.io/company/6182/default_2119cf7ac922b781704952f39f729d1cc1bd3692.png","thumbUrl":"https://img.stackshare.io/company/6182/thumb_2119cf7ac922b781704952f39f729d1cc1bd3692.png","__typename":"Company"},"__typename":"Stack","canonicalUrl":"/launchdarkly/launchdarkly"},"__typename":"StackEdge"},{"node":{"owner":{"name":"Tokopedia","imageUrl":"https://img.stackshare.io/company/21102/default_1d5a3094fef7ba1a5b1a57f1651369581bc22cc4.jpg","thumbUrl":"https://img.stackshare.io/company/21102/thumb_1d5a3094fef7ba1a5b1a57f1651369581bc22cc4.jpg","__typename":"Company"},"__typename":"Stack","canonicalUrl":"/tokopedia/tokopedia"},"__typename":"StackEdge"},{"node":{"owner":{"name":"Hepsiburada","imageUrl":"https://img.stackshare.io/company/29765/11753097.png","thumbUrl":"https://img.stackshare.io/company/29765/thumb_11753097.png","__typename":"Company"},"__typename":"Stack","canonicalUrl":"/hepsiburada/hepsiburada"},"__typename":"StackEdge"},{"node":{"owner":{"name":"Revolut","imageUrl":"https://img.stackshare.io/company/17445/default_b8eec4bab7316116a7e0909123bf7e3df6e028aa.png","thumbUrl":"https://img.stackshare.io/company/17445/thumb_b8eec4bab7316116a7e0909123bf7e3df6e028aa.png","__typename":"Company"},"__typename":"Stack","canonicalUrl":"/revolut/revolut"},"__typename":"StackEdge"},{"node":{"owner":{"name":"trivago","imageUrl":"https://img.stackshare.io/company/2084/default_79d34713b767344ee779dd08bde3899f9a7939b4.png","thumbUrl":"https://img.stackshare.io/company/2084/thumb_79d34713b767344ee779dd08bde3899f9a7939b4.png","__typename":"Company"},"__typename":"Stack","canonicalUrl":"/trivago/trivago"},"__typename":"StackEdge"},{"node":{"owner":{"name":"Alibaba Group","imageUrl":"https://img.stackshare.io/company/162563/default_778ed136d08980e90396ec94375170f61fd083a4.png","thumbUrl":"https://img.stackshare.io/company/162563/thumb_778ed136d08980e90396ec94375170f61fd083a4.png","__typename":"Company"},"__typename":"Stack","canonicalUrl":"/alibaba-group/alibaba-travels"},"__typename":"StackEdge"}],"pageInfo":{"endCursor":"Nw","__typename":"PageInfo","hasNextPage":true},"__typename":"StackConnection"}},"cachedAllToolIntegrations":{"type":"json","json":{"count":52,"edges":[{"node":{"name":"Docker","path":"/docker","imageUrl":"https://img.stackshare.io/service/586/n4u37v9t_400x400.png","thumbUrl":"https://img.stackshare.io/service/586/thumb_n4u37v9t_400x400.png","__typename":"Tool"},"__typename":"ToolEdge"},{"node":{"name":"Kubernetes","path":"/kubernetes","imageUrl":"https://img.stackshare.io/service/1885/21_d3cvM.png","thumbUrl":"https://img.stackshare.io/service/1885/thumb_21_d3cvM.png","__typename":"Tool"},"__typename":"ToolEdge"},{"node":{"name":"Amazon EC2","path":"/amazon-ec2","imageUrl":"https://img.stackshare.io/service/18/amazon-ec2.png","thumbUrl":"https://img.stackshare.io/service/18/thumb_amazon-ec2.png","__typename":"Tool"},"__typename":"ToolEdge"},{"node":{"name":"Microsoft Azure","path":"/microsoft-azure","imageUrl":"https://img.stackshare.io/service/213/default_88defae415fcb9cd0ac5d36c1ed27e74133c6287.jpg","thumbUrl":"https://img.stackshare.io/service/213/thumb_88defae415fcb9cd0ac5d36c1ed27e74133c6287.jpg","__typename":"Tool"},"__typename":"ToolEdge"},{"node":{"name":"New Relic","path":"/new-relic","imageUrl":"https://img.stackshare.io/service/103/default_193410db3a7e419c7b436961bf41d733c7346b59.png","thumbUrl":"https://img.stackshare.io/service/103/thumb_193410db3a7e419c7b436961bf41d733c7346b59.png","__typename":"Tool"},"__typename":"ToolEdge"},{"node":{"name":"Google Compute Engine","path":"/google-compute-engine","imageUrl":"https://img.stackshare.io/service/518/s01TMTGn.png","thumbUrl":"https://img.stackshare.io/service/518/thumb_s01TMTGn.png","__typename":"Tool"},"__typename":"ToolEdge"},{"node":{"name":"Twilio","path":"/twilio","imageUrl":"https://img.stackshare.io/service/130/VrwpNfjh_400x400.png","thumbUrl":"https://img.stackshare.io/service/130/thumb_VrwpNfjh_400x400.png","__typename":"Tool"},"__typename":"ToolEdge"}],"pageInfo":{"endCursor":"Nw","__typename":"PageInfo","hasNextPage":true},"__typename":"ToolConnection"}},"officialArticles({\"first\":5})":{"type":"id","generated":true,"id":"$Tool:101231773700412232.officialArticles({\"first\":5})","typename":"ArticleConnection"},"__typename":"Tool","title":"Radically simple configuration-management, application deployment, task-execution, and multi-node orchestration engine","verified":true,"fans":16491,"followContext":null},"$Tool:101231773700412232.license":{"name":"GPL-3.0","url":"https://github.com/ansible/ansible/blob/devel/COPYING","__typename":"ToolLicense"},"$Tool:101231773700412232.vulnerabilities":{"edges":[],"__typename":"VulnerabilityConnection"},"$Tool:101231773700412232.layer":{"name":"DevOps","slug":"devops","__typename":"Layer"},"$Tool:101231773700412232.category":{"name":"Build, Test, Deploy","slug":"build-test-deploy","__typename":"Category"},"$Tool:101231773700412232.function":{"name":"Server Configuration and Automation","slug":"server-configuration-and-automation","__typename":"Function"},"$Tool:101231773700412232.privateStacks({\"first\":7})":{"edges":[],"__typename":"StackConnection"},"$Tool:101231773700412232.teams({\"first\":7})":{"edges":[],"__typename":"TeamConnection"},"$Tool:101231773700412232.officialArticles({\"first\":5}).edges.0.node":{"title":"Project signing and verification","importSource":null,"outboundUrl":"https://www.ansible.com/blog/project-signing-and-verification","discussionScore":null,"publishedAt":"2022-12-06T14:00:00Z","commentCount":0,"__typename":"Article"},"$Tool:101231773700412232.officialArticles({\"first\":5}).edges.0":{"node":{"type":"id","generated":true,"id":"$Tool:101231773700412232.officialArticles({\"first\":5}).edges.0.node","typename":"Article"},"__typename":"ArticleEdge"},"$Tool:101231773700412232.officialArticles({\"first\":5}).edges.1.node":{"title":"Keep the learning pace! A Holiday recap about network automation sessions","importSource":null,"outboundUrl":"https://www.ansible.com/blog/keep-the-learning-pace-a-holiday-recap-about-network-automation-sessions","discussionScore":null,"publishedAt":"2022-12-05T17:00:00Z","commentCount":0,"__typename":"Article"},"$Tool:101231773700412232.officialArticles({\"first\":5}).edges.1":{"node":{"type":"id","generated":true,"id":"$Tool:101231773700412232.officialArticles({\"first\":5}).edges.1.node","typename":"Article"},"__typename":"ArticleEdge"},"$Tool:101231773700412232.officialArticles({\"first\":5}).edges.2.node":{"title":"What's new in Ansible Automation Platform 2.3","importSource":null,"outboundUrl":"https://www.ansible.com/blog/whats-new-in-red-hat-ansible-automation-platform-2.3","discussionScore":null,"publishedAt":"2022-11-29T14:00:00Z","commentCount":0,"__typename":"Article"},"$Tool:101231773700412232.officialArticles({\"first\":5}).edges.2":{"node":{"type":"id","generated":true,"id":"$Tool:101231773700412232.officialArticles({\"first\":5}).edges.2.node","typename":"Article"},"__typename":"ArticleEdge"},"$Tool:101231773700412232.officialArticles({\"first\":5}).edges.3.node":{"title":"Walking on Clouds with Ansible","importSource":null,"outboundUrl":"https://www.ansible.com/blog/walking-on-clouds-with-ansible","discussionScore":null,"publishedAt":"2022-11-28T15:00:00Z","commentCount":0,"__typename":"Article"},"$Tool:101231773700412232.officialArticles({\"first\":5}).edges.3":{"node":{"type":"id","generated":true,"id":"$Tool:101231773700412232.officialArticles({\"first\":5}).edges.3.node","typename":"Article"},"__typename":"ArticleEdge"},"$Tool:101231773700412232.officialArticles({\"first\":5}).edges.4.node":{"title":"Importing/Exporting Collections in automation hubs","importSource":null,"outboundUrl":"https://www.ansible.com/blog/importing/exporting-collections-in-automation-hubs","discussionScore":null,"publishedAt":"2022-11-22T14:00:00Z","commentCount":0,"__typename":"Article"},"$Tool:101231773700412232.officialArticles({\"first\":5}).edges.4":{"node":{"type":"id","generated":true,"id":"$Tool:101231773700412232.officialArticles({\"first\":5}).edges.4.node","typename":"Article"},"__typename":"ArticleEdge"},"$Tool:101231773700412232.officialArticles({\"first\":5})":{"edges":[{"type":"id","generated":true,"id":"$Tool:101231773700412232.officialArticles({\"first\":5}).edges.0","typename":"ArticleEdge"},{"type":"id","generated":true,"id":"$Tool:101231773700412232.officialArticles({\"first\":5}).edges.1","typename":"ArticleEdge"},{"type":"id","generated":true,"id":"$Tool:101231773700412232.officialArticles({\"first\":5}).edges.2","typename":"ArticleEdge"},{"type":"id","generated":true,"id":"$Tool:101231773700412232.officialArticles({\"first\":5}).edges.3","typename":"ArticleEdge"},{"type":"id","generated":true,"id":"$Tool:101231773700412232.officialArticles({\"first\":5}).edges.4","typename":"ArticleEdge"}],"__typename":"ArticleConnection"},"ROOT_QUERY":{"tool({\"id\":\"ansible\"})":{"type":"id","generated":false,"id":"Tool:101231773700412232","typename":"Tool"},"tool({\"id\":\"terraform\"})":{"type":"id","generated":false,"id":"Tool:101231773970332063","typename":"Tool"},"stackupBySlug({\"slug\":\"ansible-vs-terraform\"})":{"type":"id","generated":true,"id":"$ROOT_QUERY.stackupBySlug({\"slug\":\"ansible-vs-terraform\"})","typename":"Stackup"}},"Tool:101231773970332063":{"id":"101231773970332063","legacyThirdPartyId":"1276","slug":"terraform","contactEnabled":true,"contactButtonText":"Download the eBook: Understanding Terraform","contactFlow":{"type":"json","json":{"links":[{"url":"https://www.linode.com/content/declarative-cloud-infrastructure-management-terraform-linode/?utm_source=stack_share&utm_medium=cpm&utm_campaign=cpm-stack_share-terraform&utm_content=ebook-terraform&utm_term=","type":"website"}],"steps":["direct_link"]}},"name":"Terraform","packageManager":null,"type":"PackageManager","imageUrl":"https://img.stackshare.io/service/1276/og-image-8b3e4f7d.png","thumbUrl":"https://img.stackshare.io/package_manager/1276/thumb_og-image-8b3e4f7d.png","thumbRetinaUrl":"https://img.stackshare.io/package_manager/1276/thumb_retina_og-image-8b3e4f7d.png","canonicalUrl":"/terraform","stacks":18959,"votes":337,"jobs":2976,"followersCount":11649,"following":false,"latestVersionNumber":"1.3.6","license":{"type":"id","generated":true,"id":"$Tool:101231773970332063.license","typename":"ToolLicense"},"dependentPackagesCount":0,"membersCount":0,"vulnerabilities":{"type":"id","generated":true,"id":"$Tool:101231773970332063.vulnerabilities","typename":"VulnerabilityConnection"},"hackernewsOnlineMentionsCount":153,"redditOnlineMentionsCount":241,"stackOverflowOnlineMentionsCount":14343,"githubForksCount":8182,"githubStarsCount":35409,"githubUpdatedAt":"2022-12-06T14:36:39Z","description":"With Terraform, you describe your complete infrastructure as code, even as it spans multiple service providers. Your servers may come from AWS, your DNS may come from CloudFlare, and your database may come from Heroku. Terraform will build all these resources across all these providers in parallel.","pricingUrl":null,"popularity":39880.4,"path":"/terraform","pressUrl":"https://github.com/hashicorp/terraform","relatedStackupsCount":56,"layer":{"type":"id","generated":true,"id":"$Tool:101231773970332063.layer","typename":"Layer"},"category":{"type":"id","generated":true,"id":"$Tool:101231773970332063.category","typename":"Category"},"function":{"type":"id","generated":true,"id":"$Tool:101231773970332063.function","typename":"Function"},"cachedPros":{"type":"json","json":{"count":16,"edges":[{"node":{"id":"101978468700668190","text":"Infrastructure as code","upvoted":false,"__typename":"Reason","upvotesCount":117},"__typename":"ReasonEdge"},{"node":{"id":"101978468602662182","text":"Declarative syntax","upvoted":false,"__typename":"Reason","upvotesCount":73},"__typename":"ReasonEdge"},{"node":{"id":"101978468831025220","text":"Planning","upvoted":false,"__typename":"Reason","upvotesCount":44},"__typename":"ReasonEdge"},{"node":{"id":"101978469126238489","text":"Simple","upvoted":false,"__typename":"Reason","upvotesCount":28},"__typename":"ReasonEdge"},{"node":{"id":"101978468830836598","text":"Parallelism","upvoted":false,"__typename":"Reason","upvotesCount":24},"__typename":"ReasonEdge"},{"node":{"id":"101978469475467272","text":"Well-documented","upvoted":false,"__typename":"Reason","upvotesCount":8},"__typename":"ReasonEdge"},{"node":{"id":"101978469642002485","text":"Cloud agnostic ","upvoted":false,"__typename":"Reason","upvotesCount":7},"__typename":"ReasonEdge"},{"node":{"id":"101978469285679630","text":"It's like coding your infrastructure in simple English","upvoted":false,"__typename":"Reason","upvotesCount":6},"__typename":"ReasonEdge"},{"node":{"id":"101978469832240279","text":"Platform agnostic","upvoted":false,"__typename":"Reason","upvotesCount":5},"__typename":"ReasonEdge"},{"node":{"id":"101978469938159446","text":"Immutable infrastructure","upvoted":false,"__typename":"Reason","upvotesCount":5},"__typename":"ReasonEdge"},{"node":{"id":"101978469334823272","text":"Portability","upvoted":false,"__typename":"Reason","upvotesCount":4},"__typename":"ReasonEdge"},{"node":{"id":"101978469641846330","text":"Automation ","upvoted":false,"__typename":"Reason","upvotesCount":4},"__typename":"ReasonEdge"},{"node":{"id":"101978470262642739","text":"Automates infrastructure deployments","upvoted":false,"__typename":"Reason","upvotesCount":4},"__typename":"ReasonEdge"},{"node":{"id":"103838817703981735","text":"Extendable","upvoted":false,"__typename":"Reason","upvotesCount":4},"__typename":"ReasonEdge"},{"node":{"id":"101978469632062739","text":"Scales to hundreds of hosts","upvoted":false,"__typename":"Reason","upvotesCount":2},"__typename":"ReasonEdge"},{"node":{"id":"101978469475207290","text":"Lightweight","upvoted":false,"__typename":"Reason","upvotesCount":2},"__typename":"ReasonEdge"}],"pageInfo":{"endCursor":"MTY","__typename":"PageInfo","hasNextPage":false},"__typename":"ReasonConnection"}},"cachedCons":{"type":"json","json":{"count":1,"edges":[{"node":{"id":"105377874192215995","text":"Doesn't have full support to GKE ","upvoted":false,"__typename":"Reason","upvotesCount":1},"__typename":"ReasonEdge"}],"pageInfo":{"endCursor":"MQ","__typename":"PageInfo","hasNextPage":false},"__typename":"ReasonConnection"}},"privateStacks({\"first\":7})":{"type":"id","generated":true,"id":"$Tool:101231773970332063.privateStacks({\"first\":7})","typename":"StackConnection"},"teams({\"first\":7})":{"type":"id","generated":true,"id":"$Tool:101231773970332063.teams({\"first\":7})","typename":"TeamConnection"},"cachedCompanyStacksUsing":{"type":"json","json":{"count":1859,"edges":[{"node":{"owner":{"name":"Uber Technologies","imageUrl":"https://img.stackshare.io/company/363/default_e5d5db9bd2df8488fe8e61913e700c52ec9c13e4.jpg","thumbUrl":"https://img.stackshare.io/company/363/thumb_e5d5db9bd2df8488fe8e61913e700c52ec9c13e4.jpg","__typename":"Company"},"__typename":"Stack","canonicalUrl":"/uber-technologies/uber"},"__typename":"StackEdge"},{"node":{"owner":{"name":"Udemy","imageUrl":"https://img.stackshare.io/company/365/default_139b6882a2de6f1ba5f36ab52b6180c3cd08f043.png","thumbUrl":"https://img.stackshare.io/company/365/thumb_139b6882a2de6f1ba5f36ab52b6180c3cd08f043.png","__typename":"Company"},"__typename":"Stack","canonicalUrl":"/udemy/udemy"},"__typename":"StackEdge"},{"node":{"owner":{"name":"Instacart","imageUrl":"https://img.stackshare.io/company/174/default_3db7d44e23a905728f32f343a244c769223ba786.jpg","thumbUrl":"https://img.stackshare.io/company/174/thumb_3db7d44e23a905728f32f343a244c769223ba786.jpg","__typename":"Company"},"__typename":"Stack","canonicalUrl":"/instacart/instacart"},"__typename":"StackEdge"},{"node":{"owner":{"name":"Robinhood","imageUrl":"https://img.stackshare.io/company/10640/default_227fe5c26a1518cab3dc8b8b13e7575636c9db45.png","thumbUrl":"https://img.stackshare.io/company/10640/thumb_227fe5c26a1518cab3dc8b8b13e7575636c9db45.png","__typename":"Company"},"__typename":"Stack","canonicalUrl":"/robinhood/robinhood"},"__typename":"StackEdge"},{"node":{"owner":{"name":"Slack","imageUrl":"https://img.stackshare.io/company/308/default_c854a41f2e8fe982eb5704e3af9c2b4d9f1a2ffe.jpg","thumbUrl":"https://img.stackshare.io/company/308/thumb_c854a41f2e8fe982eb5704e3af9c2b4d9f1a2ffe.jpg","__typename":"Company"},"__typename":"Stack","canonicalUrl":"/slack/slack"},"__typename":"StackEdge"},{"node":{"owner":{"name":"LaunchDarkly","imageUrl":"https://img.stackshare.io/company/6182/default_2119cf7ac922b781704952f39f729d1cc1bd3692.png","thumbUrl":"https://img.stackshare.io/company/6182/thumb_2119cf7ac922b781704952f39f729d1cc1bd3692.png","__typename":"Company"},"__typename":"Stack","canonicalUrl":"/launchdarkly/launchdarkly"},"__typename":"StackEdge"},{"node":{"owner":{"name":"Twitch","imageUrl":"https://img.stackshare.io/company/360/default_bbe11f9cd4920eb6fb7ab9e57fbda01eaddf6435.jpg","thumbUrl":"https://img.stackshare.io/company/360/thumb_bbe11f9cd4920eb6fb7ab9e57fbda01eaddf6435.jpg","__typename":"Company"},"__typename":"Stack","canonicalUrl":"/twitch/twitch"},"__typename":"StackEdge"}],"pageInfo":{"endCursor":"Nw","__typename":"PageInfo","hasNextPage":true},"__typename":"StackConnection"}},"cachedAllToolIntegrations":{"type":"json","json":{"count":66,"edges":[{"node":{"name":"CloudFlare","path":"/cloudflare","imageUrl":"https://img.stackshare.io/service/15/twitter-profile-400x400.png","thumbUrl":"https://img.stackshare.io/service/15/thumb_twitter-profile-400x400.png","__typename":"Tool"},"__typename":"ToolEdge"},{"node":{"name":"Amazon EC2","path":"/amazon-ec2","imageUrl":"https://img.stackshare.io/service/18/amazon-ec2.png","thumbUrl":"https://img.stackshare.io/service/18/thumb_amazon-ec2.png","__typename":"Tool"},"__typename":"ToolEdge"},{"node":{"name":"Heroku","path":"/heroku","imageUrl":"https://img.stackshare.io/service/133/3wgIDj3j.png","thumbUrl":"https://img.stackshare.io/service/133/thumb_3wgIDj3j.png","__typename":"Tool"},"__typename":"ToolEdge"},{"node":{"name":"Microsoft Azure","path":"/microsoft-azure","imageUrl":"https://img.stackshare.io/service/213/default_88defae415fcb9cd0ac5d36c1ed27e74133c6287.jpg","thumbUrl":"https://img.stackshare.io/service/213/thumb_88defae415fcb9cd0ac5d36c1ed27e74133c6287.jpg","__typename":"Tool"},"__typename":"ToolEdge"},{"node":{"name":"DigitalOcean","path":"/digitalocean","imageUrl":"https://img.stackshare.io/service/295/Onjxs6Lw_400x400.jpg","thumbUrl":"https://img.stackshare.io/service/295/thumb_Onjxs6Lw_400x400.jpg","__typename":"Tool"},"__typename":"ToolEdge"},{"node":{"name":"Google Compute Engine","path":"/google-compute-engine","imageUrl":"https://img.stackshare.io/service/518/s01TMTGn.png","thumbUrl":"https://img.stackshare.io/service/518/thumb_s01TMTGn.png","__typename":"Tool"},"__typename":"ToolEdge"},{"node":{"name":"Consul","path":"/consul","imageUrl":"https://img.stackshare.io/service/747/consul-logo-grad_teaser.png","thumbUrl":"https://img.stackshare.io/service/747/thumb_consul-logo-grad_teaser.png","__typename":"Tool"},"__typename":"ToolEdge"}],"pageInfo":{"endCursor":"Nw","__typename":"PageInfo","hasNextPage":true},"__typename":"ToolConnection"}},"officialArticles({\"first\":5})":{"type":"id","generated":true,"id":"$Tool:101231773970332063.officialArticles({\"first\":5})","typename":"ArticleConnection"},"__typename":"Tool","title":"Describe your complete infrastructure as code and build resources across providers","verified":true,"fans":14130,"followContext":null},"$Tool:101231773970332063.license":{"name":"MPL-2.0","url":"https://github.com/hashicorp/terraform/blob/main/LICENSE","__typename":"ToolLicense"},"$Tool:101231773970332063.vulnerabilities":{"edges":[],"__typename":"VulnerabilityConnection"},"$Tool:101231773970332063.layer":{"name":"Application and Data","slug":"application_and_data","__typename":"Layer"},"$Tool:101231773970332063.category":{"name":"Libraries","slug":"libraries","__typename":"Category"},"$Tool:101231773970332063.function":{"name":"Terraform Packages","slug":"terraform-packages","__typename":"Function"},"$Tool:101231773970332063.privateStacks({\"first\":7})":{"edges":[],"__typename":"StackConnection"},"$Tool:101231773970332063.teams({\"first\":7})":{"edges":[],"__typename":"TeamConnection"},"$Tool:101231773970332063.officialArticles({\"first\":5}).edges.0.node":{"title":"Using Terraform for blue-green deployments on Triton","importSource":null,"outboundUrl":"https://www.joyent.com/blog/blue-green-deploys-with-terraform","discussionScore":null,"publishedAt":"2017-12-01T20:00:00Z","commentCount":0,"__typename":"Article"},"$Tool:101231773970332063.officialArticles({\"first\":5}).edges.0":{"node":{"type":"id","generated":true,"id":"$Tool:101231773970332063.officialArticles({\"first\":5}).edges.0.node","typename":"Article"},"__typename":"ArticleEdge"},"$Tool:101231773970332063.officialArticles({\"first\":5}).edges.1.node":{"title":"Get started with Terraform and a simple application","importSource":null,"outboundUrl":"https://www.joyent.com/blog/simple-app-with-terraform","discussionScore":null,"publishedAt":"2017-11-08T20:00:00Z","commentCount":0,"__typename":"Article"},"$Tool:101231773970332063.officialArticles({\"first\":5}).edges.1":{"node":{"type":"id","generated":true,"id":"$Tool:101231773970332063.officialArticles({\"first\":5}).edges.1.node","typename":"Article"},"__typename":"ArticleEdge"},"$Tool:101231773970332063.officialArticles({\"first\":5}).edges.2.node":{"title":"Managing Amazon ElastiCache with Terraform","importSource":null,"outboundUrl":"https://aws.amazon.com/blogs/database/managing-amazon-elasticache-with-terraform/","discussionScore":null,"publishedAt":"2017-10-19T18:35:42Z","commentCount":0,"__typename":"Article"},"$Tool:101231773970332063.officialArticles({\"first\":5}).edges.2":{"node":{"type":"id","generated":true,"id":"$Tool:101231773970332063.officialArticles({\"first\":5}).edges.2.node","typename":"Article"},"__typename":"ArticleEdge"},"$Tool:101231773970332063.officialArticles({\"first\":5}).edges.3.node":{"title":"Terraform with vCenter and Chef","importSource":null,"outboundUrl":"https://blog.chef.io/2017/11/13/terraform-vcenter-chef/","discussionScore":null,"publishedAt":"2017-11-13T13:06:44Z","commentCount":0,"__typename":"Article"},"$Tool:101231773970332063.officialArticles({\"first\":5}).edges.3":{"node":{"type":"id","generated":true,"id":"$Tool:101231773970332063.officialArticles({\"first\":5}).edges.3.node","typename":"Article"},"__typename":"ArticleEdge"},"$Tool:101231773970332063.officialArticles({\"first\":5}).edges.4.node":{"title":"Chef, Terraform, vCenter and Windows","importSource":null,"outboundUrl":"https://blog.chef.io/2017/11/15/chef-terraform-vcenter-and-windows/","discussionScore":null,"publishedAt":"2017-11-15T13:18:04Z","commentCount":0,"__typename":"Article"},"$Tool:101231773970332063.officialArticles({\"first\":5}).edges.4":{"node":{"type":"id","generated":true,"id":"$Tool:101231773970332063.officialArticles({\"first\":5}).edges.4.node","typename":"Article"},"__typename":"ArticleEdge"},"$Tool:101231773970332063.officialArticles({\"first\":5})":{"edges":[{"type":"id","generated":true,"id":"$Tool:101231773970332063.officialArticles({\"first\":5}).edges.0","typename":"ArticleEdge"},{"type":"id","generated":true,"id":"$Tool:101231773970332063.officialArticles({\"first\":5}).edges.1","typename":"ArticleEdge"},{"type":"id","generated":true,"id":"$Tool:101231773970332063.officialArticles({\"first\":5}).edges.2","typename":"ArticleEdge"},{"type":"id","generated":true,"id":"$Tool:101231773970332063.officialArticles({\"first\":5}).edges.3","typename":"ArticleEdge"},{"type":"id","generated":true,"id":"$Tool:101231773970332063.officialArticles({\"first\":5}).edges.4","typename":"ArticleEdge"}],"__typename":"ArticleConnection"},"$ROOT_QUERY.stackupBySlug({\"slug\":\"ansible-vs-terraform\"})":{"cachedAlternativeTools":{"type":"json","json":{"count":37,"edges":[{"node":{"id":"101231773628223844","name":"Puppet Labs","__typename":"Tool","description":"Puppet is an automated administrative engine for your Linux, Unix, and Windows systems and performs administrative tasks (such as adding users, installing packages, and updating server configurations) based on a centralized specification."},"__typename":"ToolEdge"},{"node":{"id":"101231773627798007","name":"Chef","__typename":"Tool","description":"Chef enables you to manage and scale cloud infrastructure with no downtime or interruptions. Freely move applications and configurations from one cloud to another. Chef is integrated with all major cloud providers including Amazon EC2, VMWare, IBM Smartcloud, Rackspace, OpenStack, Windows Azure, HP Cloud, Google Compute Engine, Joyent Cloud and others."},"__typename":"ToolEdge"},{"node":{"id":"101231773700872359","name":"Salt","__typename":"Tool","description":"Salt is a new approach to infrastructure management. Easy enough to get running in minutes, scalable enough to manage tens of thousands of servers, and fast enough to communicate with them in seconds.\r\n\r\nSalt delivers a dynamic communication bus for infrastructures that can be used for orchestration, remote execution, configuration management and much more."},"__typename":"ToolEdge"},{"node":{"id":"101231773703650742","name":"Jenkins","__typename":"Tool","description":"In a nutshell Jenkins CI is the leading open-source continuous integration server. Built with Java, it provides over 300 plugins to support building and testing virtually any project."},"__typename":"ToolEdge"},{"node":{"id":"101231773623413723","name":"AWS CloudFormation","__typename":"Tool","description":"You can use AWS CloudFormation鈥檚 sample templates or create your own templates to describe the AWS resources, and any associated dependencies or runtime parameters, required to run your application. You don鈥檛 need to figure out the order in which AWS services need to be provisioned or the subtleties of how to make those dependencies work."},"__typename":"ToolEdge"}],"__typename":"ToolConnection"}},"contactEnabledTools":[{"type":"id","generated":false,"id":"Tool:101231773700412232","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773970332063","typename":"Tool"}],"jobs":{"type":"id","generated":true,"id":"$ROOT_QUERY.stackupBySlug({\"slug\":\"ansible-vs-terraform\"}).jobs","typename":"JobConnection"},"featuredPosts":{"type":"id","generated":true,"id":"$ROOT_QUERY.stackupBySlug({\"slug\":\"ansible-vs-terraform\"}).featuredPosts","typename":"FeaturedPostConnection"},"applesToOranges":true,"content1":"<p><strong>Ansible vs Terraform: What are the differences?</strong></p>\n\n<p>Every growing startup or tech organization wants to automate apps and IT infrastructure.\n<strong>Ansible</strong> is a simple way to do that. An open-source software provisioning, configuration management, and application-deployment tool comes with its own declarative language. Ansible is an automation tool that helps drive complexity away and accelerate DevOps initiatives. Backed by RedHat\n<strong>Terraform</strong> acts like an orchestrator, using Packer for automation. Terraform is more of an infrastructure provisioning tool. Terraform talks to VMWare, AWS, GCP, and deploys infrastructure. From the house of HashiCorp, Terraform allows the creation, management and improvement of infrastructure. An open source code drives APIs into declarative configuration files.</p>\n","content2":"","topContent":"","bottomContent":"","packageStackup":false,"screenshotImageUrl":"https://img.stackshare.io/stackup/6319665/ansible-vs-terraform.png","function":null,"path":"/stackups/ansible-vs-terraform","title":"Ansible vs Terraform","seoUpdatedAt":"2022-12-06T14:00:00Z","cachedStackDecisionsGetAdvice":{"type":"json","json":{"count":1,"edges":[{"node":{"id":"102809404749940295","user":{"id":"101232129197300643","title":null,"imageUrl":"https://img.stackshare.io/user/269243/default_baac760034e70df87bd511c3b777f0d81964a445.png","thumbUrl":"https://img.stackshare.io/user/269243/thumb_baac760034e70df87bd511c3b777f0d81964a445.png","username":"moonlight16","__typename":"User","companyName":null,"displayName":"moonlight16"},"stack":null,"topics":[],"answers":{"count":2,"edges":[{"node":{"id":"103889909166381057","link":null,"user":{"id":"103218969740177490","path":"/StefanPapp","title":"","imageUrl":"https://img.stackshare.io/user/321579/default_7adafb9f562a1044024f378021c2c252b57bf5e3.jpeg","username":"StefanPapp","__typename":"User","companyName":"","displayName":"Stefan Papp"},"draft":false,"topics":[],"company":null,"flagged":false,"private":false,"toTools":[],"upvoted":false,"publicId":"103889909166381057","services":[],"createdAt":"2020-03-26T14:50:09Z","fromTools":[],"viewCount":210235,"__typename":"StackDecision","bookmarked":false,"rawContent":"I have been working with Puppet and Ansible. The reason why I prefer ansible is the distribution of it. Ansible is more lightweight and therefore more popular. This leads to situations, where you can get fully packaged applications for ansible (e.g. confluent) supported by the vendor, but only incomplete packages for Puppet.\n\nThe only advantage I would see with Puppet if someone wants to use Foreman. This is still better supported with Puppet.","htmlContent":"<p>I have been working with Puppet and Ansible. The reason why I prefer ansible is the distribution of it. Ansible is more lightweight and therefore more popular. This leads to situations, where you can get fully packaged applications for ansible (e.g. confluent) supported by the vendor, but only incomplete packages for Puppet.</p>\n\n<p>The only advantage I would see with Puppet if someone wants to use Foreman. This is still better supported with Puppet.</p>","permissions":{"edit":false,"delete":false,"__typename":"Permissions"},"publishedAt":"2020-03-26T14:50:09Z","decisionType":"giveAdvice","rootComments":[],"subjectTools":[{"id":"101231773700412232","fans":16407,"name":"Ansible","path":"/ansible","slug":"ansible","title":"Radically simple configuration-management, application deployment, task-execution, and multi-node orchestration engine","votes":1309,"stacks":16836,"imageUrl":"https://img.stackshare.io/service/663/ElOjna20.png","verified":true,"following":false,"__typename":"Tool","canonicalUrl":"/ansible","followContext":null}],"upvotesCount":3,"commentsCount":0},"__typename":"StackDecisionEdge"},{"node":{"id":"103871455774914381","link":{"url":"http://blog.naologic.com","title":"Naologic","imageUrl":"","__typename":"Link"},"user":{"id":"101232045711256136","path":"/gp187","title":"CEO","imageUrl":"https://img.stackshare.io/user/113936/default_ee2ecf96abf5be12c0427f0ddf08467a4ad1fea3.jpeg","username":"gp187","__typename":"User","companyName":"NaoLogic Inc","displayName":"Gabriel Pa"},"draft":false,"topics":[],"company":{"id":"101231722990440717","name":"Naologic","path":"/companies/naologic","slug":"naologic","imageUrl":"https://img.stackshare.io/company/29593/default_6e3818d500cd17c817e48b6b4e742add9b258290.png","__typename":"Company"},"flagged":false,"private":false,"toTools":[],"upvoted":false,"publicId":"103871455774914381","services":[{"id":"101231774781423216","fans":17509,"name":"Docker Compose","path":"/docker-compose","slug":"docker-compose","title":"Define and run multi-container applications with Docker","votes":501,"stacks":18450,"imageUrl":"https://img.stackshare.io/service/3136/docker-compose.png","verified":true,"following":false,"__typename":"Tool","canonicalUrl":"/docker-compose","followContext":null},{"id":"101231774206661614","fans":50712,"name":"Kubernetes","path":"/kubernetes","slug":"kubernetes","title":"Manage a cluster of Linux containers as a single system to accelerate Dev and simplify Ops","votes":639,"stacks":49680,"imageUrl":"https://img.stackshare.io/service/1885/21_d3cvM.png","verified":false,"following":false,"__typename":"Tool","canonicalUrl":"/kubernetes","followContext":null}],"createdAt":"2020-03-23T08:37:13Z","fromTools":[],"viewCount":213812,"__typename":"StackDecision","bookmarked":false,"rawContent":"If you are just starting out, might as well learn @{Kubernetes}|tool:1885| \nThere's a lot of tools that come with Kube that make it easier to use and most importantly: you become cloud-agnostic. \nWe use Ansible because it's a lot simpler than Chef or Puppet and if you use @{Docker Compose}|tool:3136| for your deployments you can re-use them with @{Kubernetes}|tool:1885| later when you migrate","htmlContent":"<p>If you are just starting out, might as well learn <span class=\"tool\">Kubernetes</span> \nThere's a lot of tools that come with Kube that make it easier to use and most importantly: you become cloud-agnostic. \nWe use Ansible because it's a lot simpler than Chef or Puppet and if you use <span class=\"tool\">Docker Compose</span> for your deployments you can re-use them with <span class=\"tool\">Kubernetes</span> later when you migrate</p>","permissions":{"edit":false,"delete":false,"__typename":"Permissions"},"publishedAt":"2020-03-23T08:37:13Z","decisionType":"giveAdvice","rootComments":[],"subjectTools":[{"id":"101231774206661614","fans":50712,"name":"Kubernetes","path":"/kubernetes","slug":"kubernetes","title":"Manage a cluster of Linux containers as a single system to accelerate Dev and simplify Ops","votes":639,"stacks":49680,"imageUrl":"https://img.stackshare.io/service/1885/21_d3cvM.png","verified":false,"following":false,"__typename":"Tool","canonicalUrl":"/kubernetes","followContext":null}],"upvotesCount":2,"commentsCount":0},"__typename":"StackDecisionEdge"}],"pageInfo":{"endCursor":"Mg","__typename":"PageInfo","hasNextPage":false},"__typename":"StackDecisionConnection"},"company":null,"private":false,"toTools":[],"publicId":"102809404749940295","services":[],"fromTools":[],"viewCount":210185,"__typename":"StackDecision","htmlContent":"<p>I'm just getting started using Vagrant to help automate setting up local VMs to set up a Kubernetes cluster (development and experimentation only). (Yes, I do know about minikube)</p>\n\n<p>I'm looking for a tool to help install software packages, setup users, etc..., on these VMs. I'm also fairly new to Ansible, Chef, and Puppet. What's a good one to start with to learn? I might decide to try all 3 at some point for my own curiosity. </p>\n\n<p>The most important factors for me are simplicity, ease of use, shortest learning curve.</p>","publishedAt":"2019-09-17T19:03:40Z","decisionType":"getAdvice","subjectTools":[{"id":"101231773700412232","fans":16407,"name":"Ansible","path":"/ansible","slug":"ansible","title":"Radically simple configuration-management, application deployment, task-execution, and multi-node orchestration engine","votes":1309,"stacks":16836,"imageUrl":"https://img.stackshare.io/service/663/ElOjna20.png","verified":true,"following":false,"__typename":"Tool","canonicalUrl":"/ansible","followContext":null},{"id":"101231773627798007","fans":1271,"name":"Chef","path":"/chef","slug":"chef","title":"Build, destroy and rebuild servers on any public or private cloud","votes":345,"stacks":1166,"imageUrl":"https://img.stackshare.io/service/420/24f4ef5e7a67c0d720bf9ae69dd6de2a.png","verified":false,"following":false,"__typename":"Tool","canonicalUrl":"/chef","followContext":null},{"id":"101231773628223844","fans":944,"name":"Puppet Labs","path":"/puppet","slug":"puppet","title":"Server automation framework and application","votes":225,"stacks":975,"imageUrl":"https://img.stackshare.io/service/421/954f7381089ac290b4690c5ffd9dd7d3.png","verified":true,"following":false,"__typename":"Tool","canonicalUrl":"/puppet","followContext":null}],"upvotesCount":2},"__typename":"StackDecisionEdge"}],"pageInfo":{"endCursor":"MQ","__typename":"PageInfo","hasNextPage":false},"__typename":"StackDecisionConnection"}},"privateStackDecisionsGetAdvice({\"first\":3})":{"type":"id","generated":true,"id":"$ROOT_QUERY.stackupBySlug({\"slug\":\"ansible-vs-terraform\"}).privateStackDecisionsGetAdvice({\"first\":3})","typename":"StackDecisionConnection"},"cachedStackDecisions":{"type":"json","json":{"count":5,"edges":[{"node":{"id":"105221205866059203","user":{"id":"101231992125248818","title":"Cloud and DevOps Consultant","imageUrl":"https://img.stackshare.io/user/5542/default_36885ab544c8920202724293157636a426011fee.jpeg","thumbUrl":"https://img.stackshare.io/user/5542/thumb_36885ab544c8920202724293157636a426011fee.jpeg","username":"Fodoj","__typename":"User","companyName":"mkdev","displayName":"Kirill Shirinkin"},"stack":{"id":"105221166785923360","name":"Transcripto","path":"/transcripto/transcripto","owner":{"id":"105221151446592528","name":"Transcripto","slug":"transcripto","imageUrl":"https://img.stackshare.io/company/166199/default_f0bf03b423292546a4562210a184efa7688ffdf7.png","__typename":"Company"},"private":false,"imageUrl":"https://img.stackshare.io/stack/763924/default_8dcec99e9739e08e62ce2413465bafc1e11e4046.png","__typename":"Stack","identifier":"transcripto/transcripto"},"topics":[],"company":{"name":"Transcripto","path":"/companies/transcripto","features":[],"imageUrl":"https://img.stackshare.io/company/166199/default_f0bf03b423292546a4562210a184efa7688ffdf7.png","thumbUrl":"https://img.stackshare.io/company/166199/thumb_f0bf03b423292546a4562210a184efa7688ffdf7.png","__typename":"Company"},"private":false,"toTools":[{"id":"104558845302832514","fans":15,"name":"AWS Copilot","path":"/aws-copilot","slug":"aws-copilot","title":"A tool for developers to build, release and operate production ready containerized applications","votes":0,"stacks":10,"imageUrl":"https://img.stackshare.io/service/12689/no-img.png","verified":false,"following":false,"__typename":"Tool","canonicalUrl":"/aws-copilot","followContext":null}],"publicId":"105221205866059203","services":[],"fromTools":[{"id":"101231773623413723","fans":1614,"name":"AWS CloudFormation","path":"/aws-cloudformation","slug":"aws-cloudformation","title":"Create and manage a collection of related AWS resources","votes":89,"stacks":1609,"imageUrl":"https://img.stackshare.io/service/411/aws-cloudformation.png","verified":false,"following":false,"__typename":"Tool","canonicalUrl":"/aws-cloudformation","followContext":null},{"id":"101926994197858823","fans":269,"name":"Google Cloud Run","path":"/google-cloud-run","slug":"google-cloud-run","title":"Run stateless HTTP containers on a fully managed environment or in your own GKE cluster","votes":56,"stacks":221,"imageUrl":"https://img.stackshare.io/service/10762/google-cloud-run-logo.png","verified":false,"following":false,"__typename":"Tool","canonicalUrl":"/google-cloud-run","followContext":null},{"id":"101231773970332063","fans":14016,"name":"Terraform","path":"/terraform","slug":"terraform","title":"Describe your complete infrastructure as code and build resources across providers","votes":337,"stacks":18900,"imageUrl":"https://img.stackshare.io/service/1276/og-image-8b3e4f7d.png","verified":true,"following":false,"__typename":"Tool","canonicalUrl":"/terraform","followContext":null}],"viewCount":111138,"__typename":"StackDecision","htmlContent":"<p>Ok, so first - AWS Copilot <em>is</em> CloudFormation under the hood, but the way it works results in you not thinking about CFN anymore. AWS found the right balance with Copilot - it's insanely simple to setup production-ready multi-account environment with many services inside, with CI/CD out of the box etc etc. It's pretty new, but even now it was enough to launch Transcripto, which uses may be a dozen of different AWS services, all bound together by Copilot.</p>","publishedAt":"2020-11-16T17:36:24Z","decisionType":"tool","subjectTools":[{"id":"104558845302832514","fans":15,"name":"AWS Copilot","path":"/aws-copilot","slug":"aws-copilot","title":"A tool for developers to build, release and operate production ready containerized applications","votes":0,"stacks":10,"imageUrl":"https://img.stackshare.io/service/12689/no-img.png","verified":false,"following":false,"__typename":"Tool","canonicalUrl":"/aws-copilot","followContext":null},{"id":"101231773623413723","fans":1614,"name":"AWS CloudFormation","path":"/aws-cloudformation","slug":"aws-cloudformation","title":"Create and manage a collection of related AWS resources","votes":89,"stacks":1609,"imageUrl":"https://img.stackshare.io/service/411/aws-cloudformation.png","verified":false,"following":false,"__typename":"Tool","canonicalUrl":"/aws-cloudformation","followContext":null},{"id":"101926994197858823","fans":269,"name":"Google Cloud Run","path":"/google-cloud-run","slug":"google-cloud-run","title":"Run stateless HTTP containers on a fully managed environment or in your own GKE cluster","votes":56,"stacks":221,"imageUrl":"https://img.stackshare.io/service/10762/google-cloud-run-logo.png","verified":false,"following":false,"__typename":"Tool","canonicalUrl":"/google-cloud-run","followContext":null},{"id":"101231773970332063","fans":14016,"name":"Terraform","path":"/terraform","slug":"terraform","title":"Describe your complete infrastructure as code and build resources across providers","votes":337,"stacks":18900,"imageUrl":"https://img.stackshare.io/service/1276/og-image-8b3e4f7d.png","verified":true,"following":false,"__typename":"Tool","canonicalUrl":"/terraform","followContext":null}],"upvotesCount":3},"__typename":"StackDecisionEdge"},{"node":{"id":"104112463312995040","user":{"id":"101232089541364349","title":null,"imageUrl":"https://img.stackshare.io/user/193020/default_422f761b8db3f8d5c7ecbd1d66f0f4c062472090.png","thumbUrl":"https://img.stackshare.io/user/193020/thumb_422f761b8db3f8d5c7ecbd1d66f0f4c062472090.png","username":"unthought","__typename":"User","companyName":null,"displayName":"unthought"},"stack":{"id":"101231803147741548","name":"My Stack","path":"/unthought/my-stack","owner":{"id":"101232089541364349","imageUrl":"https://img.stackshare.io/user/193020/default_422f761b8db3f8d5c7ecbd1d66f0f4c062472090.png","username":"unthought","__typename":"User"},"private":false,"imageUrl":"https://img.stackshare.io/stack/55298/default_47fb5dea0c1c217b5a3a4d326def1e2e4f6ade15.png","__typename":"Stack","identifier":"unthought/my-stack"},"topics":[],"company":null,"private":false,"toTools":[{"id":"101231777958242651","fans":289,"name":"Pulumi","path":"/pulumi","slug":"pulumi","title":"Modern Infrastructure as Code","votes":15,"stacks":177,"imageUrl":"https://img.stackshare.io/service/9053/pulumi_mark_flat_onPurple.png","verified":true,"following":false,"__typename":"Tool","canonicalUrl":"/pulumi","followContext":null}],"publicId":"104112463312995040","services":[],"fromTools":[{"id":"101231773623413723","fans":1614,"name":"AWS CloudFormation","path":"/aws-cloudformation","slug":"aws-cloudformation","title":"Create and manage a collection of related AWS resources","votes":89,"stacks":1609,"imageUrl":"https://img.stackshare.io/service/411/aws-cloudformation.png","verified":false,"following":false,"__typename":"Tool","canonicalUrl":"/aws-cloudformation","followContext":null},{"id":"101231773970332063","fans":14016,"name":"Terraform","path":"/terraform","slug":"terraform","title":"Describe your complete infrastructure as code and build resources across providers","votes":337,"stacks":18900,"imageUrl":"https://img.stackshare.io/service/1276/og-image-8b3e4f7d.png","verified":true,"following":false,"__typename":"Tool","canonicalUrl":"/terraform","followContext":null}],"viewCount":311638,"__typename":"StackDecision","htmlContent":"<p>Because Pulumi uses real programming languages, you can actually write abstractions for your infrastructure code, which is incredibly empowering. You still 'describe' your desired state, but by having a programming language at your fingers, you can factor out patterns, and package it up for easier consumption.</p>","publishedAt":"2020-05-04T22:08:36Z","decisionType":"tool","subjectTools":[{"id":"101231777958242651","fans":289,"name":"Pulumi","path":"/pulumi","slug":"pulumi","title":"Modern Infrastructure as Code","votes":15,"stacks":177,"imageUrl":"https://img.stackshare.io/service/9053/pulumi_mark_flat_onPurple.png","verified":true,"following":false,"__typename":"Tool","canonicalUrl":"/pulumi","followContext":null},{"id":"101231773623413723","fans":1614,"name":"AWS CloudFormation","path":"/aws-cloudformation","slug":"aws-cloudformation","title":"Create and manage a collection of related AWS resources","votes":89,"stacks":1609,"imageUrl":"https://img.stackshare.io/service/411/aws-cloudformation.png","verified":false,"following":false,"__typename":"Tool","canonicalUrl":"/aws-cloudformation","followContext":null},{"id":"101231773970332063","fans":14016,"name":"Terraform","path":"/terraform","slug":"terraform","title":"Describe your complete infrastructure as code and build resources across providers","votes":337,"stacks":18900,"imageUrl":"https://img.stackshare.io/service/1276/og-image-8b3e4f7d.png","verified":true,"following":false,"__typename":"Tool","canonicalUrl":"/terraform","followContext":null}],"upvotesCount":5},"__typename":"StackDecisionEdge"},{"node":{"id":"104015003607719234","user":{"id":"103691762466741818","title":"Contractor","imageUrl":"https://img.stackshare.io/user/395747/default_cee6d0174a14f11b989c3248f474eb4d84809396.jpg","thumbUrl":"https://img.stackshare.io/user/395747/thumb_cee6d0174a14f11b989c3248f474eb4d84809396.jpg","username":"sergey-ivanov-at-adaptive","__typename":"User","companyName":"","displayName":"Sergey Ivanov"},"stack":{"id":"103736014363182038","name":"Delta Project","path":"/AFC/delta-project","owner":{"id":"103244254226895372","name":"Adaptive","slug":"AFC","imageUrl":"https://img.stackshare.io/company/159916/default_e52b0991f25c53420dcac41f108eb338e049110e.png","__typename":"Company"},"private":false,"imageUrl":"https://img.stackshare.io/stack/562201/default_c7bc2c9f6a0c977bc717c62d29b2d6fbace68918.png","__typename":"Stack","identifier":"AFC/delta-project"},"topics":[],"company":{"name":"Adaptive","path":"/companies/AFC","features":[],"imageUrl":"https://img.stackshare.io/company/159916/default_e52b0991f25c53420dcac41f108eb338e049110e.png","thumbUrl":"https://img.stackshare.io/company/159916/thumb_e52b0991f25c53420dcac41f108eb338e049110e.png","__typename":"Company"},"private":false,"toTools":[{"id":"101231773970332063","fans":14016,"name":"Terraform","path":"/terraform","slug":"terraform","title":"Describe your complete infrastructure as code and build resources across providers","votes":337,"stacks":18900,"imageUrl":"https://img.stackshare.io/service/1276/og-image-8b3e4f7d.png","verified":true,"following":false,"__typename":"Tool","canonicalUrl":"/terraform","followContext":null}],"publicId":"104015003607719234","services":[],"fromTools":[{"id":"101231773623413723","fans":1614,"name":"AWS CloudFormation","path":"/aws-cloudformation","slug":"aws-cloudformation","title":"Create and manage a collection of related AWS resources","votes":89,"stacks":1609,"imageUrl":"https://img.stackshare.io/service/411/aws-cloudformation.png","verified":false,"following":false,"__typename":"Tool","canonicalUrl":"/aws-cloudformation","followContext":null},{"id":"101231777958242651","fans":289,"name":"Pulumi","path":"/pulumi","slug":"pulumi","title":"Modern Infrastructure as Code","votes":15,"stacks":177,"imageUrl":"https://img.stackshare.io/service/9053/pulumi_mark_flat_onPurple.png","verified":true,"following":false,"__typename":"Tool","canonicalUrl":"/pulumi","followContext":null}],"viewCount":310180,"__typename":"StackDecision","htmlContent":"Overview\n\n<p>We use Terraform to manage AWS cloud environment for the project. It is pretty complex, largely static, security-focused, and constantly evolving.</p>\n\n<p>Terraform provides descriptive <em>(declarative)</em> way of defining the target configuration, where it can work out the dependencies between configuration elements and apply differences without re-provisioning the entire cloud stack.</p>\n\nAdvantages\n\n<p>Terraform is vendor-neutral in a way that it is using a common configuration language (HCL) with plugins (providers) for multiple cloud and service providers.</p>\n\n<p>Terraform keeps track of the previous state of the deployment and applies incremental changes, resulting in faster deployment times.</p>\n\n<p>Terraform allows us to share reusable modules between projects. We have built an impressive library of modules internally, which makes it very easy to assemble a new project from pre-fabricated building blocks.</p>\n\nDisadvantages\n\n<p>Software is imperfect, and Terraform is no exception. Occasionally we hit annoying bugs that we have to work around. The interaction with any underlying APIs is encapsulated inside 3rd party Terraform providers, and any bug fixes or new features require a provider release. Some providers have very poor coverage of the underlying APIs.</p>\n\n<p>Terraform is not great for managing highly dynamic parts of cloud environments. That part is better delegated to other tools or scripts.</p>\n\n<p>Terraform state may go out of sync with the target environment or with the source configuration, which often results in painful reconciliation.</p>","publishedAt":"2020-04-17T17:03:18Z","decisionType":"tool","subjectTools":[{"id":"101231773970332063","fans":14016,"name":"Terraform","path":"/terraform","slug":"terraform","title":"Describe your complete infrastructure as code and build resources across providers","votes":337,"stacks":18900,"imageUrl":"https://img.stackshare.io/service/1276/og-image-8b3e4f7d.png","verified":true,"following":false,"__typename":"Tool","canonicalUrl":"/terraform","followContext":null},{"id":"101231773623413723","fans":1614,"name":"AWS CloudFormation","path":"/aws-cloudformation","slug":"aws-cloudformation","title":"Create and manage a collection of related AWS resources","votes":89,"stacks":1609,"imageUrl":"https://img.stackshare.io/service/411/aws-cloudformation.png","verified":false,"following":false,"__typename":"Tool","canonicalUrl":"/aws-cloudformation","followContext":null},{"id":"101231777958242651","fans":289,"name":"Pulumi","path":"/pulumi","slug":"pulumi","title":"Modern Infrastructure as Code","votes":15,"stacks":177,"imageUrl":"https://img.stackshare.io/service/9053/pulumi_mark_flat_onPurple.png","verified":true,"following":false,"__typename":"Tool","canonicalUrl":"/pulumi","followContext":null}],"upvotesCount":4},"__typename":"StackDecisionEdge"},{"node":{"id":"103857300410614402","user":{"id":"103857190858082547","title":"SRE","imageUrl":"https://img.stackshare.io/user/454042/default_1876d9a83c12495d0944a905c38affdd13aa0969.jpg","thumbUrl":"https://img.stackshare.io/user/454042/thumb_1876d9a83c12495d0944a905c38affdd13aa0969.jpg","username":"timothy6177","__typename":"User","companyName":"","displayName":"Timothy Adams"},"stack":{"id":"103857222961801067","name":"My Stack","path":"/timothy6177/my-stack","owner":{"id":"103857190858082547","imageUrl":"https://img.stackshare.io/user/454042/default_1876d9a83c12495d0944a905c38affdd13aa0969.jpg","username":"timothy6177","__typename":"User"},"private":false,"imageUrl":"https://img.stackshare.io/stack/580947/default_6f291742f627d36aa4fd40ce3637e7bdb7af4206.jpg","__typename":"Stack","identifier":"timothy6177/my-stack"},"topics":[],"company":null,"private":false,"toTools":[{"id":"101231773970332063","fans":14016,"name":"Terraform","path":"/terraform","slug":"terraform","title":"Describe your complete infrastructure as code and build resources across providers","votes":337,"stacks":18900,"imageUrl":"https://img.stackshare.io/service/1276/og-image-8b3e4f7d.png","verified":true,"following":false,"__typename":"Tool","canonicalUrl":"/terraform","followContext":null}],"publicId":"103857300410614402","services":[],"fromTools":[{"id":"101231773623413723","fans":1614,"name":"AWS CloudFormation","path":"/aws-cloudformation","slug":"aws-cloudformation","title":"Create and manage a collection of related AWS resources","votes":89,"stacks":1609,"imageUrl":"https://img.stackshare.io/service/411/aws-cloudformation.png","verified":false,"following":false,"__typename":"Tool","canonicalUrl":"/aws-cloudformation","followContext":null},{"id":"101231776857758559","fans":103,"name":"Google Cloud Deployment Manager","path":"/google-cloud-deployment-manager","slug":"google-cloud-deployment-manager","title":"Create and manage cloud resources with simple templates","votes":5,"stacks":25,"imageUrl":"https://img.stackshare.io/service/6810/deployment-manager-3.png","verified":true,"following":false,"__typename":"Tool","canonicalUrl":"/google-cloud-deployment-manager","followContext":null}],"viewCount":270483,"__typename":"StackDecision","htmlContent":"<p>I personally am not a huge fan of vendor lock in for multiple reasons:</p>\n\n<ul>\n<li>I've seen cost saving moves to the cloud end up costing a fortune and trapping companies due to over utilization of cloud specific features.</li>\n<li>I've seen S3 failures nearly take down half the internet.</li>\n<li>I've seen companies get stuck in the cloud because they aren't built cloud agnostic.</li>\n</ul>\n\n<p>I choose to use terraform for my cloud provisioning for these reasons:</p>\n\n<ul>\n<li>It's cloud agnostic so I can use it no matter where I am.</li>\n<li>It isn't difficult to use and uses a relatively easy to read language.</li>\n<li>It tests infrastructure before running it, and enables me to see and keep changes up to date.</li>\n<li>It runs from the same CLI I do most of my CM work from.</li>\n</ul>","publishedAt":"2020-03-20T20:37:19Z","decisionType":"tool","subjectTools":[{"id":"101231773970332063","fans":14016,"name":"Terraform","path":"/terraform","slug":"terraform","title":"Describe your complete infrastructure as code and build resources across providers","votes":337,"stacks":18900,"imageUrl":"https://img.stackshare.io/service/1276/og-image-8b3e4f7d.png","verified":true,"following":false,"__typename":"Tool","canonicalUrl":"/terraform","followContext":null},{"id":"101231773623413723","fans":1614,"name":"AWS CloudFormation","path":"/aws-cloudformation","slug":"aws-cloudformation","title":"Create and manage a collection of related AWS resources","votes":89,"stacks":1609,"imageUrl":"https://img.stackshare.io/service/411/aws-cloudformation.png","verified":false,"following":false,"__typename":"Tool","canonicalUrl":"/aws-cloudformation","followContext":null},{"id":"101231776857758559","fans":103,"name":"Google Cloud Deployment Manager","path":"/google-cloud-deployment-manager","slug":"google-cloud-deployment-manager","title":"Create and manage cloud resources with simple templates","votes":5,"stacks":25,"imageUrl":"https://img.stackshare.io/service/6810/deployment-manager-3.png","verified":true,"following":false,"__typename":"Tool","canonicalUrl":"/google-cloud-deployment-manager","followContext":null}],"upvotesCount":7},"__typename":"StackDecisionEdge"},{"node":{"id":"103080800236049641","user":{"id":"102182841808695342","title":"","imageUrl":"https://img.stackshare.io/user/296875/default_a070a5411aacdfce03dc33d2977d0d73715c4049.png","thumbUrl":"https://img.stackshare.io/user/296875/thumb_a070a5411aacdfce03dc33d2977d0d73715c4049.png","username":"sungchun12","__typename":"User","companyName":"","displayName":"Sung Won Chung"},"stack":{"id":"102182872643037099","name":"My Stack","path":"/sungchun12/my-stack","owner":{"id":"102182841808695342","imageUrl":"https://img.stackshare.io/user/296875/default_a070a5411aacdfce03dc33d2977d0d73715c4049.png","username":"sungchun12","__typename":"User"},"private":false,"imageUrl":"https://img.stackshare.io/stack/371690/default_efec810d6360673757d31a62076f23136f6ee26c.png","__typename":"Stack","identifier":"sungchun12/my-stack"},"topics":[],"company":null,"private":false,"toTools":[{"id":"101231773970332063","fans":14016,"name":"Terraform","path":"/terraform","slug":"terraform","title":"Describe your complete infrastructure as code and build resources across providers","votes":337,"stacks":18900,"imageUrl":"https://img.stackshare.io/service/1276/og-image-8b3e4f7d.png","verified":true,"following":false,"__typename":"Tool","canonicalUrl":"/terraform","followContext":null}],"publicId":"103080800236049641","services":[{"name":"Google Cloud IoT Core","imageUrl":"https://img.stackshare.io/service/7702/cloud-iot-core.png","thumbUrl":"https://img.stackshare.io/service/7702/thumb_cloud-iot-core.png","__typename":"Tool"},{"name":"Terraform","imageUrl":"https://img.stackshare.io/service/1276/og-image-8b3e4f7d.png","thumbUrl":"https://img.stackshare.io/package_manager/1276/thumb_og-image-8b3e4f7d.png","__typename":"Tool"},{"name":"Python","imageUrl":"https://img.stackshare.io/service/993/pUBY5pVj.png","thumbUrl":"https://img.stackshare.io/service/993/thumb_pUBY5pVj.png","__typename":"Tool"},{"name":"Google Cloud Deployment Manager","imageUrl":"https://img.stackshare.io/service/6810/deployment-manager-3.png","thumbUrl":"https://img.stackshare.io/service/6810/thumb_deployment-manager-3.png","__typename":"Tool"},{"name":"Google Cloud Build","imageUrl":"https://img.stackshare.io/service/9309/PoHJY3K8_400x400.jpg","thumbUrl":"https://img.stackshare.io/service/9309/thumb_PoHJY3K8_400x400.jpg","__typename":"Tool"},{"name":"Google Cloud Run","imageUrl":"https://img.stackshare.io/service/10762/google-cloud-run-logo.png","thumbUrl":"https://img.stackshare.io/service/10762/thumb_google-cloud-run-logo.png","__typename":"Tool"},{"name":"Google Cloud Bigtable","imageUrl":"https://img.stackshare.io/service/2977/Cloud-Bigtable.png","thumbUrl":"https://img.stackshare.io/service/2977/thumb_Cloud-Bigtable.png","__typename":"Tool"},{"name":"Google BigQuery","imageUrl":"https://img.stackshare.io/service/695/BigQuery.png","thumbUrl":"https://img.stackshare.io/service/695/thumb_BigQuery.png","__typename":"Tool"},{"name":"Google Cloud Storage","imageUrl":"https://img.stackshare.io/service/694/Cloud_Storage.png","thumbUrl":"https://img.stackshare.io/service/694/thumb_Cloud_Storage.png","__typename":"Tool"},{"name":"Google Compute Engine","imageUrl":"https://img.stackshare.io/service/518/s01TMTGn.png","thumbUrl":"https://img.stackshare.io/service/518/thumb_s01TMTGn.png","__typename":"Tool"},{"name":"GitHub","imageUrl":"https://img.stackshare.io/service/27/default_869c34d29acc794d60ecdd5d2b5bfc042a80a4ec.jpg","thumbUrl":"https://img.stackshare.io/service/27/thumb_869c34d29acc794d60ecdd5d2b5bfc042a80a4ec.jpg","__typename":"Tool"}],"fromTools":[{"id":"101231776857758559","fans":103,"name":"Google Cloud Deployment Manager","path":"/google-cloud-deployment-manager","slug":"google-cloud-deployment-manager","title":"Create and manage cloud resources with simple templates","votes":5,"stacks":25,"imageUrl":"https://img.stackshare.io/service/6810/deployment-manager-3.png","verified":true,"following":false,"__typename":"Tool","canonicalUrl":"/google-cloud-deployment-manager","followContext":null},{"id":"101231773837179153","fans":188581,"name":"Python","path":"/python","slug":"python","title":"A clear and powerful object-oriented programming language, comparable to Perl, Ruby, Scheme, or Java.","votes":6655,"stacks":194693,"imageUrl":"https://img.stackshare.io/service/993/pUBY5pVj.png","verified":false,"following":false,"__typename":"Tool","canonicalUrl":"/python","followContext":null}],"viewCount":1013457,"__typename":"StackDecision","htmlContent":"<p><strong>Context</strong>: I wanted to create an end to end IoT data pipeline simulation in <span class=\"tool\">Google Cloud IoT Core</span> and other GCP services. I never touched <span class=\"tool\">Terraform</span> meaningfully until working on this project, and it's one of the best explorations in my development career. The documentation and syntax is incredibly human-readable and friendly. I'm used to building infrastructure through the google apis via <span class=\"tool\">Python</span> , but I'm so glad past Sung did not make that decision. I was tempted to use <span class=\"tool\">Google Cloud Deployment Manager</span>, but the templates were a bit convoluted by first impression. I'm glad past Sung did not make this decision either.</p>\n\n<p><strong>Solution</strong>: Leveraging <span class=\"tool\">Google Cloud Build</span> <span class=\"tool\">Google Cloud Run</span> <span class=\"tool\">Google Cloud Bigtable</span> <span class=\"tool\">Google BigQuery</span> <span class=\"tool\">Google Cloud Storage</span> <span class=\"tool\">Google Compute Engine</span> along with some other fun tools, I can deploy over 40 GCP resources using Terraform!</p>\n\n<p><strong>Check Out My Architecture</strong>: <a href=\"https://github.com/sungchun12/iot-python-webapp/blob/master/documentation/architecture-drawio.png\" rel=\"nofollow noopener\" target=\"_blank\">CLICK ME</a></p>\n\n<p>Check out the <span class=\"tool\">GitHub</span> repo attached</p>","publishedAt":"2019-11-04T17:23:06Z","decisionType":"tool","subjectTools":[{"id":"101231773970332063","fans":14016,"name":"Terraform","path":"/terraform","slug":"terraform","title":"Describe your complete infrastructure as code and build resources across providers","votes":337,"stacks":18900,"imageUrl":"https://img.stackshare.io/service/1276/og-image-8b3e4f7d.png","verified":true,"following":false,"__typename":"Tool","canonicalUrl":"/terraform","followContext":null},{"id":"101231776857758559","fans":103,"name":"Google Cloud Deployment Manager","path":"/google-cloud-deployment-manager","slug":"google-cloud-deployment-manager","title":"Create and manage cloud resources with simple templates","votes":5,"stacks":25,"imageUrl":"https://img.stackshare.io/service/6810/deployment-manager-3.png","verified":true,"following":false,"__typename":"Tool","canonicalUrl":"/google-cloud-deployment-manager","followContext":null},{"id":"101231773837179153","fans":188581,"name":"Python","path":"/python","slug":"python","title":"A clear and powerful object-oriented programming language, comparable to Perl, Ruby, Scheme, or Java.","votes":6655,"stacks":194693,"imageUrl":"https://img.stackshare.io/service/993/pUBY5pVj.png","verified":false,"following":false,"__typename":"Tool","canonicalUrl":"/python","followContext":null}],"upvotesCount":31},"__typename":"StackDecisionEdge"}],"pageInfo":{"endCursor":"NQ","__typename":"PageInfo","hasNextPage":false},"__typename":"StackDecisionConnection"}},"privateStackDecisions({\"first\":5})":{"type":"id","generated":true,"id":"$ROOT_QUERY.stackupBySlug({\"slug\":\"ansible-vs-terraform\"}).privateStackDecisions({\"first\":5})","typename":"StackDecisionConnection"},"cachedFooterRelatedStackups":{"type":"json","json":[{"path":"/stackups/ansible-vs-chef-vs-puppet","title":"Ansible vs Chef vs Puppet Labs","__typename":"Stackup"},{"path":"/stackups/ansible-vs-chef","title":"Ansible vs Chef","__typename":"Stackup"},{"path":"/stackups/packer-vs-terraform","title":"Packer vs Terraform","__typename":"Stackup"},{"path":"/stackups/ansible-vs-fabric","title":"Ansible vs Fabric","__typename":"Stackup"},{"path":"/stackups/ansible-vs-capistrano-vs-chef","title":"Ansible vs Capistrano vs Chef","__typename":"Stackup"}]},"footerTopStackups":[{"type":"id","generated":true,"id":"$ROOT_QUERY.stackupBySlug({\"slug\":\"ansible-vs-terraform\"}).footerTopStackups.0","typename":"Stackup"},{"type":"id","generated":true,"id":"$ROOT_QUERY.stackupBySlug({\"slug\":\"ansible-vs-terraform\"}).footerTopStackups.1","typename":"Stackup"},{"type":"id","generated":true,"id":"$ROOT_QUERY.stackupBySlug({\"slug\":\"ansible-vs-terraform\"}).footerTopStackups.2","typename":"Stackup"},{"type":"id","generated":true,"id":"$ROOT_QUERY.stackupBySlug({\"slug\":\"ansible-vs-terraform\"}).footerTopStackups.3","typename":"Stackup"}],"footerTrendingStackups":[{"type":"id","generated":true,"id":"$ROOT_QUERY.stackupBySlug({\"slug\":\"ansible-vs-terraform\"}).footerTrendingStackups.0","typename":"Stackup"},{"type":"id","generated":true,"id":"$ROOT_QUERY.stackupBySlug({\"slug\":\"ansible-vs-terraform\"}).footerTrendingStackups.1","typename":"Stackup"},{"type":"id","generated":true,"id":"$ROOT_QUERY.stackupBySlug({\"slug\":\"ansible-vs-terraform\"}).footerTrendingStackups.2","typename":"Stackup"},{"type":"id","generated":true,"id":"$ROOT_QUERY.stackupBySlug({\"slug\":\"ansible-vs-terraform\"}).footerTrendingStackups.3","typename":"Stackup"},{"type":"id","generated":true,"id":"$ROOT_QUERY.stackupBySlug({\"slug\":\"ansible-vs-terraform\"}).footerTrendingStackups.4","typename":"Stackup"}],"__typename":"Stackup","featuredPosts({\"first\":8})":{"type":"id","generated":true,"id":"$ROOT_QUERY.stackupBySlug({\"slug\":\"ansible-vs-terraform\"}).featuredPosts({\"first\":8})","typename":"FeaturedPostConnection"},"jobs({\"first\":8})":{"type":"id","generated":true,"id":"$ROOT_QUERY.stackupBySlug({\"slug\":\"ansible-vs-terraform\"}).jobs({\"first\":8})","typename":"JobConnection"}},"$ROOT_QUERY.stackupBySlug({\"slug\":\"ansible-vs-terraform\"}).jobs":{"count":16,"__typename":"JobConnection"},"$ROOT_QUERY.stackupBySlug({\"slug\":\"ansible-vs-terraform\"}).featuredPosts":{"count":12,"__typename":"FeaturedPostConnection"},"$ROOT_QUERY.stackupBySlug({\"slug\":\"ansible-vs-terraform\"}).privateStackDecisionsGetAdvice({\"first\":3})":{"count":0,"pageInfo":{"type":"id","generated":true,"id":"$ROOT_QUERY.stackupBySlug({\"slug\":\"ansible-vs-terraform\"}).privateStackDecisionsGetAdvice({\"first\":3}).pageInfo","typename":"PageInfo"},"edges":[],"__typename":"StackDecisionConnection"},"$ROOT_QUERY.stackupBySlug({\"slug\":\"ansible-vs-terraform\"}).privateStackDecisionsGetAdvice({\"first\":3}).pageInfo":{"endCursor":null,"hasNextPage":false,"__typename":"PageInfo"},"$ROOT_QUERY.stackupBySlug({\"slug\":\"ansible-vs-terraform\"}).privateStackDecisions({\"first\":5})":{"count":0,"pageInfo":{"type":"id","generated":true,"id":"$ROOT_QUERY.stackupBySlug({\"slug\":\"ansible-vs-terraform\"}).privateStackDecisions({\"first\":5}).pageInfo","typename":"PageInfo"},"edges":[],"__typename":"StackDecisionConnection"},"$ROOT_QUERY.stackupBySlug({\"slug\":\"ansible-vs-terraform\"}).privateStackDecisions({\"first\":5}).pageInfo":{"hasNextPage":false,"endCursor":null,"__typename":"PageInfo"},"$ROOT_QUERY.stackupBySlug({\"slug\":\"ansible-vs-terraform\"}).footerTopStackups.0":{"title":"Bitbucket vs GitHub vs GitLab","path":"/stackups/bitbucket-vs-github-vs-gitlab","__typename":"Stackup"},"$ROOT_QUERY.stackupBySlug({\"slug\":\"ansible-vs-terraform\"}).footerTopStackups.1":{"title":"Bootstrap vs Materialize","path":"/stackups/bootstrap-vs-materialize","__typename":"Stackup"},"$ROOT_QUERY.stackupBySlug({\"slug\":\"ansible-vs-terraform\"}).footerTopStackups.2":{"title":"HipChat vs Mattermost vs Slack","path":"/stackups/hipchat-vs-mattermost-vs-slack","__typename":"Stackup"},"$ROOT_QUERY.stackupBySlug({\"slug\":\"ansible-vs-terraform\"}).footerTopStackups.3":{"title":"Postman vs Swagger UI","path":"/stackups/postman-vs-swagger-ui","__typename":"Stackup"},"$ROOT_QUERY.stackupBySlug({\"slug\":\"ansible-vs-terraform\"}).footerTrendingStackups.0":{"title":"Django vs Laravel vs Node.js","path":"/stackups/django-vs-laravel-vs-nodejs","__typename":"Stackup"},"$ROOT_QUERY.stackupBySlug({\"slug\":\"ansible-vs-terraform\"}).footerTrendingStackups.1":{"title":"Bootstrap vs Foundation vs Material-UI","path":"/stackups/bootstrap-vs-foundation-vs-material-ui","__typename":"Stackup"},"$ROOT_QUERY.stackupBySlug({\"slug\":\"ansible-vs-terraform\"}).footerTrendingStackups.2":{"title":"Node.js vs Spring Boot","path":"/stackups/nodejs-vs-spring-boot","__typename":"Stackup"},"$ROOT_QUERY.stackupBySlug({\"slug\":\"ansible-vs-terraform\"}).footerTrendingStackups.3":{"title":"Flyway vs Liquibase","path":"/stackups/flyway-vs-liquibase","__typename":"Stackup"},"$ROOT_QUERY.stackupBySlug({\"slug\":\"ansible-vs-terraform\"}).footerTrendingStackups.4":{"title":"AWS CodeCommit vs Bitbucket vs GitHub","path":"/stackups/aws-codecommit-vs-bitbucket-vs-github","__typename":"Stackup"},"$ROOT_QUERY.stackupBySlug({\"slug\":\"ansible-vs-terraform\"}).featuredPosts({\"first\":8})":{"count":12,"pageInfo":{"type":"id","generated":true,"id":"$ROOT_QUERY.stackupBySlug({\"slug\":\"ansible-vs-terraform\"}).featuredPosts({\"first\":8}).pageInfo","typename":"PageInfo"},"edges":[{"type":"id","generated":true,"id":"$ROOT_QUERY.stackupBySlug({\"slug\":\"ansible-vs-terraform\"}).featuredPosts({\"first\":8}).edges.0","typename":"FeaturedPostEdge"},{"type":"id","generated":true,"id":"$ROOT_QUERY.stackupBySlug({\"slug\":\"ansible-vs-terraform\"}).featuredPosts({\"first\":8}).edges.1","typename":"FeaturedPostEdge"},{"type":"id","generated":true,"id":"$ROOT_QUERY.stackupBySlug({\"slug\":\"ansible-vs-terraform\"}).featuredPosts({\"first\":8}).edges.2","typename":"FeaturedPostEdge"},{"type":"id","generated":true,"id":"$ROOT_QUERY.stackupBySlug({\"slug\":\"ansible-vs-terraform\"}).featuredPosts({\"first\":8}).edges.3","typename":"FeaturedPostEdge"},{"type":"id","generated":true,"id":"$ROOT_QUERY.stackupBySlug({\"slug\":\"ansible-vs-terraform\"}).featuredPosts({\"first\":8}).edges.4","typename":"FeaturedPostEdge"},{"type":"id","generated":true,"id":"$ROOT_QUERY.stackupBySlug({\"slug\":\"ansible-vs-terraform\"}).featuredPosts({\"first\":8}).edges.5","typename":"FeaturedPostEdge"},{"type":"id","generated":true,"id":"$ROOT_QUERY.stackupBySlug({\"slug\":\"ansible-vs-terraform\"}).featuredPosts({\"first\":8}).edges.6","typename":"FeaturedPostEdge"},{"type":"id","generated":true,"id":"$ROOT_QUERY.stackupBySlug({\"slug\":\"ansible-vs-terraform\"}).featuredPosts({\"first\":8}).edges.7","typename":"FeaturedPostEdge"}],"__typename":"FeaturedPostConnection"},"$ROOT_QUERY.stackupBySlug({\"slug\":\"ansible-vs-terraform\"}).featuredPosts({\"first\":8}).pageInfo":{"hasNextPage":true,"endCursor":"OA","__typename":"PageInfo"},"FeaturedPost:103566991719018664":{"id":"103566991719018664","views":2255,"title":"AI/ML Pipelines Using Open Data Hub and Kubeflow on Red Hat OpenShift","imageUrl":"https://img.stackshare.io/stack/542036/default_731716b29ab222db9d077e01b790176efe596093.png","publishedAt":"2020-01-29T14:08:00Z","canonicalUrl":"/red-hat-inc/ai-slash-ml-pipelines-using-open-data-hub-and-kubeflow-on-red-hat-openshift","previewImageUrl":"https://img.stackshare.io/stack/542036/4eea250345078ce7bdff4396f149ed502651fc41.png","company":{"type":"id","generated":true,"id":"$FeaturedPost:103566991719018664.company","typename":"Company"},"tools":[{"type":"id","generated":false,"id":"Tool:101231773837179153","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773669807419","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231774206661614","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773409399220","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773700412232","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231774455039874","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231775697957346","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773504918534","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231777504503046","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231778324027869","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231777443131039","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231774151159684","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:103556847766762557","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231774177500364","typename":"Tool"}],"favoriteStacksCount":11,"__typename":"FeaturedPost"},"$FeaturedPost:103566991719018664.company":{"name":"Red Hat, Inc.","__typename":"Company"},"Tool:101231773837179153":{"id":"101231773837179153","name":"Python","slug":"python","title":"A clear and powerful object-oriented programming language, comparable to Perl, Ruby, Scheme, or Java.","verified":false,"imageUrl":"https://img.stackshare.io/service/993/pUBY5pVj.png","canonicalUrl":"/python","path":"/python","votes":6656,"fans":189723,"stacks":195818,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773669807419":{"id":"101231773669807419","name":"Docker","slug":"docker","title":"Enterprise Container Platform for High-Velocity Innovation.","verified":true,"imageUrl":"https://img.stackshare.io/service/586/n4u37v9t_400x400.png","canonicalUrl":"/docker","path":"/docker","votes":3825,"fans":136606,"stacks":151632,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231774206661614":{"id":"101231774206661614","name":"Kubernetes","slug":"kubernetes","title":"Manage a cluster of Linux containers as a single system to accelerate Dev and simplify Ops","verified":false,"imageUrl":"https://img.stackshare.io/service/1885/21_d3cvM.png","canonicalUrl":"/kubernetes","path":"/kubernetes","votes":639,"fans":51027,"stacks":49985,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773409399220":{"id":"101231773409399220","name":"Amazon S3","slug":"amazon-s3","title":"Store and retrieve any amount of data, at any time, from anywhere on the web","verified":false,"imageUrl":"https://img.stackshare.io/service/25/amazon-s3.png","canonicalUrl":"/amazon-s3","path":"/amazon-s3","votes":2046,"fans":42650,"stacks":49170,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231774455039874":{"id":"101231774455039874","name":"Prometheus","slug":"prometheus","title":"An open-source service monitoring system and time series database, developed by SoundCloud","verified":false,"imageUrl":"https://img.stackshare.io/service/2501/default_3cf1b307194b26782be5cb209d30360580ae5b3c.png","canonicalUrl":"/prometheus","path":"/prometheus","votes":239,"fans":4274,"stacks":3270,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231775697957346":{"id":"101231775697957346","name":"TensorFlow","slug":"tensorflow","title":"Open Source Software Library for Machine Intelligence","verified":false,"imageUrl":"https://img.stackshare.io/service/4717/FtFnqC38_400x400.png","canonicalUrl":"/tensorflow","path":"/tensorflow","votes":93,"fans":3946,"stacks":3185,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773504918534":{"id":"101231773504918534","name":"Red Hat OpenShift","slug":"red-hat-openshift","title":"Red Hat's free Platform as a Service (PaaS) for hosting Java, PHP, Ruby, Python, Node.js, and Perl apps","verified":true,"imageUrl":"https://img.stackshare.io/service/197/default_d69814fad86744595b3b0b30ef84c36c09c70902.jpg","canonicalUrl":"/red-hat-openshift","path":"/red-hat-openshift","votes":506,"fans":1676,"stacks":1388,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231777504503046":{"id":"101231777504503046","name":"PyTorch","slug":"pytorch","title":"A deep learning framework that puts Python first","verified":false,"imageUrl":"https://img.stackshare.io/service/8171/YYpjkbVn_400x400.jpg","canonicalUrl":"/pytorch","path":"/pytorch","votes":42,"fans":1595,"stacks":1249,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231778324027869":{"id":"101231778324027869","name":"Argo","slug":"argo","title":"Container-native workflows for Kubernetes","verified":false,"imageUrl":"https://img.stackshare.io/service/9840/PqKLmP_S_400x400.jpg","canonicalUrl":"/argo","path":"/argo","votes":5,"fans":483,"stacks":448,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231777443131039":{"id":"101231777443131039","name":"Kubeflow","slug":"kubeflow","title":"Machine Learning Toolkit for Kubernetes","verified":true,"imageUrl":"https://img.stackshare.io/service/8052/EE9PAsVm_400x400.jpg","canonicalUrl":"/kubeflow","path":"/kubeflow","votes":18,"fans":594,"stacks":182,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231774151159684":{"id":"101231774151159684","name":"YAML","slug":"yaml","title":"A straightforward machine parsable data serialization format designed for human readability and interaction","verified":false,"imageUrl":"https://img.stackshare.io/service/1744/yaml.png","canonicalUrl":"/yaml","path":"/yaml","votes":0,"fans":388,"stacks":327,"following":false,"followContext":null,"__typename":"Tool"},"Tool:103556847766762557":{"id":"103556847766762557","name":"Open Data Hub","slug":"open-data-hub","title":"An open source project that provides open source AI tools for running large and distributed AI workloads on OpenShift Container Platform","verified":false,"imageUrl":"https://img.stackshare.io/service/11737/opendatahub.png","canonicalUrl":"/open-data-hub","path":"/open-data-hub","votes":0,"fans":21,"stacks":5,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231774177500364":{"id":"101231774177500364","name":"ceph","slug":"ceph","title":"A free-software storage platform","verified":false,"imageUrl":"https://img.stackshare.io/service/1818/cephglyph_copy_400x400.png","canonicalUrl":"/ceph","path":"/ceph","votes":9,"fans":309,"stacks":188,"following":false,"followContext":null,"__typename":"Tool"},"$ROOT_QUERY.stackupBySlug({\"slug\":\"ansible-vs-terraform\"}).featuredPosts({\"first\":8}).edges.0":{"node":{"type":"id","generated":false,"id":"FeaturedPost:103566991719018664","typename":"FeaturedPost"},"__typename":"FeaturedPostEdge"},"FeaturedPost:101738313302183487":{"id":"101738313302183487","views":6147,"title":"Redux: Scaling LaunchDarkly From 4 to 200 Billion Feature Flags Daily","imageUrl":"https://img.stackshare.io/stack/361717/default_c451f93a6daa58232135168dc8cfc86e55256e28.png","publishedAt":"2019-03-12T15:11:02Z","canonicalUrl":"/launchdarkly/redux-scaling-launchdarkly-from-4-to-200-billion-feature-flags-daily","previewImageUrl":"https://img.stackshare.io/stack/361717/b10f61715ae1e1db551cb02c7b189626a8107057.jpg","company":{"type":"id","generated":true,"id":"$FeaturedPost:101738313302183487.company","typename":"Company"},"tools":[{"type":"id","generated":false,"id":"Tool:101231773939333405","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773849098825","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773853533403","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773854768982","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773405612798","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773774313645","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773744537595","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773865214260","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773970332063","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773842107538","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231774519122717","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773523090140","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773733721900","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773552487870","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773632626053","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773825068049","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773860768398","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231777263893339","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231775590376828","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231776836579482","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231776849651628","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231776881984346","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231776741734967","typename":"Tool"}],"favoriteStacksCount":10,"__typename":"FeaturedPost"},"$FeaturedPost:101738313302183487.company":{"name":"LaunchDarkly","__typename":"Company"},"Tool:101231773939333405":{"id":"101231773939333405","name":"JavaScript","slug":"javascript","title":"Lightweight, interpreted, object-oriented language with first-class functions","verified":false,"imageUrl":"https://img.stackshare.io/service/1209/javascript.jpeg","canonicalUrl":"/javascript","path":"/javascript","votes":7913,"fans":262443,"stacks":283365,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773849098825":{"id":"101231773849098825","name":"React","slug":"react","title":"A JavaScript library for building user interfaces","verified":false,"imageUrl":"https://img.stackshare.io/service/1020/OYIaJ1KK.png","canonicalUrl":"/react","path":"/react","votes":3950,"fans":136419,"stacks":143536,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773853533403":{"id":"101231773853533403","name":"PostgreSQL","slug":"postgresql","title":"A powerful, open source object-relational database system","verified":false,"imageUrl":"https://img.stackshare.io/service/1028/ASOhU5xJ.png","canonicalUrl":"/postgresql","path":"/postgresql","votes":3467,"fans":80085,"stacks":83787,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773854768982":{"id":"101231773854768982","name":"Redis","slug":"redis","title":"Open source (BSD licensed), in-memory data structure store","verified":false,"imageUrl":"https://img.stackshare.io/service/1031/default_cbce472cd134adc6688572f999e9122b9657d4ba.png","canonicalUrl":"/redis","path":"/redis","votes":3866,"fans":47857,"stacks":52335,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773405612798":{"id":"101231773405612798","name":"Amazon EC2","slug":"amazon-ec2","title":"Scalable, pay-as-you-go compute capacity in the cloud","verified":false,"imageUrl":"https://img.stackshare.io/service/18/amazon-ec2.png","canonicalUrl":"/amazon-ec2","path":"/amazon-ec2","votes":2547,"fans":39421,"stacks":44689,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773774313645":{"id":"101231773774313645","name":"Elasticsearch","slug":"elasticsearch","title":"Open Source, Distributed, RESTful Search Engine","verified":true,"imageUrl":"https://img.stackshare.io/service/841/Image_2019-05-20_at_4.58.04_PM.png","canonicalUrl":"/elasticsearch","path":"/elasticsearch","votes":1633,"fans":29002,"stacks":31159,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773744537595":{"id":"101231773744537595","name":"Confluence","slug":"confluence","title":"One place to share, find, and collaborate on information","verified":false,"imageUrl":"https://img.stackshare.io/service/769/5_z16TbH_400x400.jpg","canonicalUrl":"/confluence","path":"/confluence","votes":200,"fans":20688,"stacks":22950,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773865214260":{"id":"101231773865214260","name":"Kafka","slug":"kafka","title":"Distributed, fault tolerant, high throughput pub-sub messaging system","verified":false,"imageUrl":"https://img.stackshare.io/service/1063/kazUJooF_400x400.jpg","canonicalUrl":"/kafka","path":"/kafka","votes":596,"fans":22180,"stacks":19922,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773842107538":{"id":"101231773842107538","name":"Golang","slug":"golang","title":"An open source programming language that makes it easy to build simple, reliable, and efficient software","verified":true,"imageUrl":"https://img.stackshare.io/service/1005/O6AczwfV_400x400.png","canonicalUrl":"/golang","path":"/golang","votes":3188,"fans":15675,"stacks":16096,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231774519122717":{"id":"101231774519122717","name":"Grafana","slug":"grafana","title":"Open source Graphite & InfluxDB Dashboard and Graph Editor","verified":false,"imageUrl":"https://img.stackshare.io/service/2645/default_8f9d552b144493679449b16c79647da5787e808b.jpg","canonicalUrl":"/grafana","path":"/grafana","votes":412,"fans":14282,"stacks":14562,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773523090140":{"id":"101231773523090140","name":"Amazon RDS","slug":"amazon-rds-for-mysql","title":"Set up, operate, and scale a relational database in the cloud.","verified":false,"imageUrl":"https://img.stackshare.io/service/232/amazon-rds.png","canonicalUrl":"/amazon-rds-for-mysql","path":"/amazon-rds-for-mysql","votes":759,"fans":12015,"stacks":15004,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773733721900":{"id":"101231773733721900","name":"Consul","slug":"consul","title":"A tool for service discovery, monitoring and configuration","verified":true,"imageUrl":"https://img.stackshare.io/service/747/consul-logo-grad_teaser.png","canonicalUrl":"/consul","path":"/consul","votes":206,"fans":1688,"stacks":1175,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773552487870":{"id":"101231773552487870","name":"Fastly","slug":"fastly","title":"We're redefining content delivery.","verified":true,"imageUrl":"https://img.stackshare.io/service/274/9V2sLNfw.png","canonicalUrl":"/fastly","path":"/fastly","votes":152,"fans":599,"stacks":1050,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773632626053":{"id":"101231773632626053","name":"Amazon Kinesis","slug":"amazon-kinesis","title":"Store and process terabytes of data each hour from hundreds of thousands of sources","verified":false,"imageUrl":"https://img.stackshare.io/service/433/default_6bea44ee4da746fbb7c9070a7ffac9b764d1ed79.png","canonicalUrl":"/amazon-kinesis","path":"/amazon-kinesis","votes":9,"fans":708,"stacks":742,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773825068049":{"id":"101231773825068049","name":"Packer","slug":"packer","title":"Create identical machine images for multiple platforms from a single source configuration","verified":true,"imageUrl":"https://img.stackshare.io/service/967/packer.png","canonicalUrl":"/packer","path":"/packer","votes":42,"fans":672,"stacks":561,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773860768398":{"id":"101231773860768398","name":"Graphite","slug":"graphite","title":"A highly scalable real-time graphing system","verified":false,"imageUrl":"https://img.stackshare.io/service/1050/graphite.png","canonicalUrl":"/graphite","path":"/graphite","votes":42,"fans":498,"stacks":383,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231777263893339":{"id":"101231777263893339","name":"Spinnaker","slug":"spinnaker","title":"Multi-cloud continuous delivery platform for releasing software changes with high velocity and confidence","verified":false,"imageUrl":"https://img.stackshare.io/service/7674/7634182.png","canonicalUrl":"/spinnaker","path":"/spinnaker","votes":12,"fans":409,"stacks":228,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231775590376828":{"id":"101231775590376828","name":"LaunchDarkly","slug":"launchdarkly","title":"Feature Management Platform","verified":true,"imageUrl":"https://img.stackshare.io/service/4506/default_11d18d52b1a22b048f9806361243c7ba4dd2c7a1.png","canonicalUrl":"/launchdarkly","path":"/launchdarkly","votes":5,"fans":337,"stacks":270,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231776836579482":{"id":"101231776836579482","name":"TimescaleDB","slug":"timescaledb","title":"Scalable and reliable time-series SQL database optimized for fast ingest and complex queries. Built on PostgreSQL.","verified":true,"imageUrl":"https://img.stackshare.io/service/6765/20190510_Timescale_Logo_Tiger.png","canonicalUrl":"/timescaledb","path":"/timescaledb","votes":41,"fans":374,"stacks":186,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231776849651628":{"id":"101231776849651628","name":"Honeycomb","slug":"honeycomb","title":"Observability for a distributed world--designed for high cardinality data and collaborative problem solving 馃悵馃挅","verified":true,"imageUrl":"https://img.stackshare.io/service/6793/honeycomb_logo.jpg","canonicalUrl":"/honeycomb","path":"/honeycomb","votes":7,"fans":119,"stacks":69,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231776881984346":{"id":"101231776881984346","name":"Patroni","slug":"patroni","title":"A Template for PostgreSQL HA with ZooKeeper, Etcd, or Consul","verified":true,"imageUrl":"https://img.stackshare.io/no-img-open-source.png","canonicalUrl":"/patroni","path":"/patroni","votes":0,"fans":35,"stacks":19,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231776741734967":{"id":"101231776741734967","name":"Armory","slug":"armory","title":"Make Deployments Boring and Self-Service","verified":true,"imageUrl":"https://img.stackshare.io/service/6591/default_773364c0e651db1b58e86defdaec0f1dc653acad.png","canonicalUrl":"/armory","path":"/armory","votes":0,"fans":33,"stacks":11,"following":false,"followContext":null,"__typename":"Tool"},"$ROOT_QUERY.stackupBySlug({\"slug\":\"ansible-vs-terraform\"}).featuredPosts({\"first\":8}).edges.1":{"node":{"type":"id","generated":false,"id":"FeaturedPost:101738313302183487","typename":"FeaturedPost"},"__typename":"FeaturedPostEdge"},"FeaturedPost:101231816561350456":{"id":"101231816561350456","views":9718,"title":"How Heap Built an Analytics Platform that Auto-Tracks Every User Event","imageUrl":"https://img.stackshare.io/stack/323987/default_23dea8fb86bd66794a7d7f0db8b354daa7520520.png","publishedAt":"2018-06-14T02:23:17Z","canonicalUrl":"/heap/how-heap-built-an-analytics-platform-that-auto-tracks-every-user-event","previewImageUrl":"https://img.stackshare.io/stack/323987/6be8f30b511b97c39b561afcc603360d647b44cf.png","company":{"type":"id","generated":true,"id":"$FeaturedPost:101231816561350456.company","typename":"Company"},"tools":[{"type":"id","generated":false,"id":"Tool:101231773410696721","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773845103618","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773849098825","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773853533403","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231774098455524","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773405612798","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773865214260","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773970332063","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773700412232","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773501041914","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231776041214023","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773700872359","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231774609734307","typename":"Tool"}],"favoriteStacksCount":14,"__typename":"FeaturedPost"},"$FeaturedPost:101231816561350456.company":{"name":"Heap","__typename":"Company"},"Tool:101231773410696721":{"id":"101231773410696721","name":"GitHub","slug":"github","title":"Powerful collaboration, review, and code management for open source and private development projects","verified":true,"imageUrl":"https://img.stackshare.io/service/27/default_869c34d29acc794d60ecdd5d2b5bfc042a80a4ec.jpg","canonicalUrl":"/github","path":"/github","votes":10238,"fans":236547,"stacks":239198,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773845103618":{"id":"101231773845103618","name":"Node.js","slug":"nodejs","title":"A platform built on Chrome's JavaScript runtime for easily building fast, scalable network applications","verified":false,"imageUrl":"https://img.stackshare.io/service/1011/n1JRsFeB_400x400.png","canonicalUrl":"/nodejs","path":"/nodejs","votes":8511,"fans":155041,"stacks":159855,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231774098455524":{"id":"101231774098455524","name":"TypeScript","slug":"typescript","title":"A superset of JavaScript that compiles to clean JavaScript output","verified":false,"imageUrl":"https://img.stackshare.io/service/1612/bynNY5dJ.jpg","canonicalUrl":"/typescript","path":"/typescript","votes":473,"fans":67117,"stacks":74489,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773501041914":{"id":"101231773501041914","name":"CircleCI","slug":"circleci","title":"Automate your development process quickly, safely, and at scale","verified":true,"imageUrl":"https://img.stackshare.io/service/190/CvqrSSFs_400x400.jpg","canonicalUrl":"/circleci","path":"/circleci","votes":962,"fans":8340,"stacks":10713,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231776041214023":{"id":"101231776041214023","name":"MobX","slug":"mobx","title":"Simple, scalable state management","verified":false,"imageUrl":"https://img.stackshare.io/service/5302/17475736.png","canonicalUrl":"/mobx","path":"/mobx","votes":114,"fans":667,"stacks":647,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773700872359":{"id":"101231773700872359","name":"Salt","slug":"salt","title":"Fast, scalable and flexible software for data center automation","verified":false,"imageUrl":"https://img.stackshare.io/service/664/-lag2uPT.png","canonicalUrl":"/salt","path":"/salt","votes":165,"fans":532,"stacks":418,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231774609734307":{"id":"101231774609734307","name":"Citus","slug":"citus","title":"Worry-free Postgres for SaaS","verified":true,"imageUrl":"https://img.stackshare.io/service/2818/mXMEghLo_400x400.jpg","canonicalUrl":"/citus","path":"/citus","votes":10,"fans":122,"stacks":51,"following":false,"followContext":null,"__typename":"Tool"},"$ROOT_QUERY.stackupBySlug({\"slug\":\"ansible-vs-terraform\"}).featuredPosts({\"first\":8}).edges.2":{"node":{"type":"id","generated":false,"id":"FeaturedPost:101231816561350456","typename":"FeaturedPost"},"__typename":"FeaturedPostEdge"},"FeaturedPost:101231807627570980":{"id":"101231807627570980","views":13848,"title":"How Stitch Consolidates A Billion Records Per Day","imageUrl":"https://img.stackshare.io/stack/294154/default_1f8040db7bd2f1b7726134421a23fcf0757cfc4c.jpg","publishedAt":"2017-09-28T04:58:01Z","canonicalUrl":"/stitch/how-stitch-consolidates-a-billion-records-per-day","previewImageUrl":"https://img.stackshare.io/stack/294154/5380122005dd543b578015905503ebd99edc6ca2.jpg","company":{"type":"id","generated":true,"id":"$FeaturedPost:101231807627570980.company","typename":"Company"},"tools":[{"type":"id","generated":false,"id":"Tool:101231773410696721","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773837179153","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773858546548","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773669807419","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773705712932","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773853533403","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773848354670","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773703650742","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231774206661614","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773409399220","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773405612798","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773865214260","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231774140043342","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773970332063","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231774215500019","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773501596063","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773501041914","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773703014119","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773841187038","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773456856070","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773627413649","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231777003038049","typename":"Tool"}],"favoriteStacksCount":17,"__typename":"FeaturedPost"},"$FeaturedPost:101231807627570980.company":{"name":"Stitch","__typename":"Company"},"Tool:101231773858546548":{"id":"101231773858546548","name":"Git","slug":"git","title":"Fast, scalable, distributed revision control system","verified":false,"imageUrl":"https://img.stackshare.io/service/1046/git.png","canonicalUrl":"/git","path":"/git","votes":6591,"fans":171394,"stacks":172842,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773705712932":{"id":"101231773705712932","name":"Slack","slug":"slack","title":"Bring all your communication together in one place","verified":false,"imageUrl":"https://img.stackshare.io/service/675/RNiSRYOF_400x400.jpg","canonicalUrl":"/slack","path":"/slack","votes":6025,"fans":100157,"stacks":105687,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773848354670":{"id":"101231773848354670","name":"AngularJS","slug":"angularjs","title":"Superheroic JavaScript MVW Framework","verified":false,"imageUrl":"https://img.stackshare.io/service/1019/square.png","canonicalUrl":"/angularjs","path":"/angularjs","votes":5234,"fans":50075,"stacks":56685,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773703650742":{"id":"101231773703650742","name":"Jenkins","slug":"jenkins","title":"An extendable open source continuous integration server","verified":false,"imageUrl":"https://img.stackshare.io/service/670/jenkins.png","canonicalUrl":"/jenkins","path":"/jenkins","votes":2239,"fans":51891,"stacks":51973,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231774140043342":{"id":"101231774140043342","name":"Kibana","slug":"kibana","title":"Visualize your Elasticsearch data and navigate the Elastic Stack","verified":true,"imageUrl":"https://img.stackshare.io/service/1722/Image_2019-05-20_at_4.53.31_PM.png","canonicalUrl":"/kibana","path":"/kibana","votes":257,"fans":17667,"stacks":18111,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231774215500019":{"id":"101231774215500019","name":"Amazon EC2 Container Service","slug":"amazon-ec2-container-service","title":"Container management service that supports Docker containers","verified":true,"imageUrl":"https://img.stackshare.io/service/1908/amazon-ecs.png","canonicalUrl":"/amazon-ec2-container-service","path":"/amazon-ec2-container-service","votes":325,"fans":11067,"stacks":13114,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773501596063":{"id":"101231773501596063","name":"Sentry","slug":"sentry","title":"See performance issues, fix errors faster, and optimize code health. ","verified":true,"imageUrl":"https://img.stackshare.io/service/191/lzoDXqf-.png","canonicalUrl":"/sentry","path":"/sentry","votes":859,"fans":10347,"stacks":12569,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773703014119":{"id":"101231773703014119","name":"Datadog","slug":"datadog","title":"Unify logs, metrics, and traces from across your distributed infrastructure.","verified":true,"imageUrl":"https://img.stackshare.io/service/669/default_34b3b9b42d07c33ac47ecdff75dd6f4f82aa70ee.jpg","canonicalUrl":"/datadog","path":"/datadog","votes":824,"fans":8399,"stacks":8030,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773841187038":{"id":"101231773841187038","name":"Clojure","slug":"clojure","title":"A dynamic programming language that targets the Java Virtual Machine","verified":false,"imageUrl":"https://img.stackshare.io/service/1003/Clojure_300x300.png","canonicalUrl":"/clojure","path":"/clojure","votes":1080,"fans":1589,"stacks":1402,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773456856070":{"id":"101231773456856070","name":"PagerDuty","slug":"pagerduty","title":"Incident management with powerful visibility, reliable alerting, and improved collaboration","verified":true,"imageUrl":"https://img.stackshare.io/service/107/GtwgsQj5_400x400.jpg","canonicalUrl":"/pagerduty","path":"/pagerduty","votes":119,"fans":862,"stacks":990,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773627413649":{"id":"101231773627413649","name":"AWS OpsWorks","slug":"aws-opswork","title":"Model and manage your entire application from load balancers to databases using Chef","verified":false,"imageUrl":"https://img.stackshare.io/service/419/aws-opswork.png","canonicalUrl":"/aws-opswork","path":"/aws-opswork","votes":51,"fans":255,"stacks":205,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231777003038049":{"id":"101231777003038049","name":"Singer","slug":"singer","title":"Simple, Composable, Open Source ETL","verified":false,"imageUrl":"https://img.stackshare.io/service/7110/ZYIRUU9B_400x400.jpg","canonicalUrl":"/singer","path":"/singer","votes":2,"fans":39,"stacks":21,"following":false,"followContext":null,"__typename":"Tool"},"$ROOT_QUERY.stackupBySlug({\"slug\":\"ansible-vs-terraform\"}).featuredPosts({\"first\":8}).edges.3":{"node":{"type":"id","generated":false,"id":"FeaturedPost:101231807627570980","typename":"FeaturedPost"},"__typename":"FeaturedPostEdge"},"FeaturedPost:101231795674466929":{"id":"101231795674466929","views":17103,"title":"How LaunchDarkly Serves Over 4 Billion Feature Flags Daily","imageUrl":"https://img.stackshare.io/stack/36962/default_b94e91592923c2d603f9862f033e7efb59636983.png","publishedAt":"2016-09-09T02:06:47Z","canonicalUrl":"/launchdarkly/how-launchdarkly-serves-over-4-billion-feature-flags-daily","previewImageUrl":"https://img.stackshare.io/stack/36962/4a17fece45a6f511aaff79f08ac536024c3a34e7.png","company":{"type":"id","generated":true,"id":"$FeaturedPost:101231795674466929.company","typename":"Company"},"tools":[{"type":"id","generated":false,"id":"Tool:101231773410696721","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773858546548","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773705712932","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773433737219","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773854388643","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773854768982","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773405612798","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773774313645","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773865214260","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773700412232","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773842107538","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773418092710","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231774492574471","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773501041914","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773541427411","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773615579247","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773618167288","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773927221330","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773398855818","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773615096541","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773887881771","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773616958547","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773552487870","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231775170694740","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231775590376828","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231774080733339","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773437839873","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231774453217750","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231774376831924","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773727742320","typename":"Tool"}],"favoriteStacksCount":27,"__typename":"FeaturedPost"},"$FeaturedPost:101231795674466929.company":{"name":"LaunchDarkly","__typename":"Company"},"Tool:101231773433737219":{"id":"101231773433737219","name":"Google Analytics","slug":"google-analytics","title":"Enterprise-class web analytics.","verified":false,"imageUrl":"https://img.stackshare.io/service/64/cU74ahCn_400x400.jpg","canonicalUrl":"/google-analytics","path":"/google-analytics","votes":5037,"fans":52859,"stacks":119982,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773854388643":{"id":"101231773854388643","name":"MongoDB","slug":"mongodb","title":"The database for giant ideas","verified":true,"imageUrl":"https://img.stackshare.io/service/1030/leaf-360x360.png","canonicalUrl":"/mongodb","path":"/mongodb","votes":4130,"fans":80410,"stacks":80381,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773418092710":{"id":"101231773418092710","name":"Amazon Route 53","slug":"amazon-route-53","title":"A highly available and scalable Domain Name System (DNS) web service.","verified":false,"imageUrl":"https://img.stackshare.io/service/38/amazon-route-53.png","canonicalUrl":"/amazon-route-53","path":"/amazon-route-53","votes":678,"fans":10565,"stacks":12843,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231774492574471":{"id":"101231774492574471","name":"AWS Elastic Load Balancing (ELB)","slug":"aws-elastic-load-balancing","title":"Automatically distribute your incoming application traffic across multiple Amazon EC2 instances","verified":false,"imageUrl":"https://img.stackshare.io/service/2587/aws-elastic-load-balancing.png","canonicalUrl":"/aws-elastic-load-balancing","path":"/aws-elastic-load-balancing","votes":59,"fans":9623,"stacks":11082,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773541427411":{"id":"101231773541427411","name":"Intercom","slug":"intercom","title":"A fundamentally new way to communicate with your customers","verified":true,"imageUrl":"https://img.stackshare.io/service/257/qmwr6vjg_400x400.png","canonicalUrl":"/intercom","path":"/intercom","votes":602,"fans":3948,"stacks":6544,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773615579247":{"id":"101231773615579247","name":"Amazon DynamoDB","slug":"amazon-dynamodb","title":"Fully managed NoSQL database service","verified":false,"imageUrl":"https://img.stackshare.io/service/389/amazon-dynamodb.png","canonicalUrl":"/amazon-dynamodb","path":"/amazon-dynamodb","votes":195,"fans":3796,"stacks":4643,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773618167288":{"id":"101231773618167288","name":"Amazon SQS","slug":"amazon-sqs","title":"Fully managed message queuing service","verified":false,"imageUrl":"https://img.stackshare.io/service/395/amazon-sqs.png","canonicalUrl":"/amazon-sqs","path":"/amazon-sqs","votes":167,"fans":2338,"stacks":3049,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773927221330":{"id":"101231773927221330","name":"HAProxy","slug":"haproxy","title":"The Reliable, High Performance TCP/HTTP Load Balancer","verified":false,"imageUrl":"https://img.stackshare.io/service/1179/preview.png","canonicalUrl":"/haproxy","path":"/haproxy","votes":556,"fans":2529,"stacks":2379,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773398855818":{"id":"101231773398855818","name":"Segment","slug":"segment","title":"A single hub to collect, translate and send your data with the flip of a switch.","verified":true,"imageUrl":"https://img.stackshare.io/service/5/default_aa447805966bbb635af0d113e93e1f1030497052.jpg","canonicalUrl":"/segment","path":"/segment","votes":275,"fans":1140,"stacks":3038,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773615096541":{"id":"101231773615096541","name":"Amazon VPC","slug":"amazon-vpc","title":"Provision a logically isolated section of the AWS Cloud and launch AWS resources in a virtual network that you define","verified":false,"imageUrl":"https://img.stackshare.io/service/388/amazon-vpc.png","canonicalUrl":"/amazon-vpc","path":"/amazon-vpc","votes":46,"fans":977,"stacks":2192,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773887881771":{"id":"101231773887881771","name":"Foundation","slug":"foundation","title":"The most advanced responsive front-end framework in the world","verified":true,"imageUrl":"https://img.stackshare.io/service/1105/ocLJW3ku_400x400.jpg","canonicalUrl":"/foundation","path":"/foundation","votes":738,"fans":1343,"stacks":1237,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773616958547":{"id":"101231773616958547","name":"Amazon ElastiCache","slug":"amazon-elasticache","title":"Deploy, operate, and scale an in-memory cache in the cloud","verified":false,"imageUrl":"https://img.stackshare.io/service/392/amazon-elasticache.png","canonicalUrl":"/amazon-elasticache","path":"/amazon-elasticache","votes":150,"fans":1236,"stacks":1339,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231775170694740":{"id":"101231775170694740","name":"Amazon Elasticsearch Service","slug":"amazon-elasticsearch-service","title":"Real-time, distributed search and analytics engine that fits nicely into a cloud environment","verified":false,"imageUrl":"https://img.stackshare.io/service/3736/amazon-elasticsearch-service.png","canonicalUrl":"/amazon-elasticsearch-service","path":"/amazon-elasticsearch-service","votes":24,"fans":363,"stacks":377,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231774080733339":{"id":"101231774080733339","name":"ReadMe.io","slug":"readme-io","title":"Create and manage beautiful, interactive documentation the easy way","verified":true,"imageUrl":"https://img.stackshare.io/service/1570/default_59f521d302264f440a1b600eed39d6d12474c575.jpg","canonicalUrl":"/readme-io","path":"/readme-io","votes":69,"fans":386,"stacks":115,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773437839873":{"id":"101231773437839873","name":"Groove","slug":"groovehq","title":"Everything you need to convert, support, and delight your customers.","verified":true,"imageUrl":"https://img.stackshare.io/service/74/4vehL4fy_400x400.jpg","canonicalUrl":"/groovehq","path":"/groovehq","votes":10,"fans":54,"stacks":61,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231774453217750":{"id":"101231774453217750","name":"Pushpin","slug":"pushpin","title":"Reverse proxy for realtime web services","verified":true,"imageUrl":"https://img.stackshare.io/service/2497/symbol.png","canonicalUrl":"/pushpin","path":"/pushpin","votes":3,"fans":52,"stacks":10,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231774376831924":{"id":"101231774376831924","name":"Elevio","slug":"elevio","title":"Proactive customer care, where and when it's needed.","verified":true,"imageUrl":"https://img.stackshare.io/service/2317/O-bdrueR_400x400.png","canonicalUrl":"/elevio","path":"/elevio","votes":0,"fans":26,"stacks":20,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773727742320":{"id":"101231773727742320","name":"Fanout","slug":"fanout","title":"Realtime APIs made simple","verified":true,"imageUrl":"https://img.stackshare.io/service/732/7611724fbaa172dcf6e51ae0c4cc0be1.png","canonicalUrl":"/fanout","path":"/fanout","votes":0,"fans":34,"stacks":6,"following":false,"followContext":null,"__typename":"Tool"},"$ROOT_QUERY.stackupBySlug({\"slug\":\"ansible-vs-terraform\"}).featuredPosts({\"first\":8}).edges.4":{"node":{"type":"id","generated":false,"id":"FeaturedPost:101231795674466929","typename":"FeaturedPost"},"__typename":"FeaturedPostEdge"},"FeaturedPost:101231795084339381":{"id":"101231795084339381","views":1892,"title":"The HyperDev Tech Stack: Powering Over 1M Containers","imageUrl":"https://img.stackshare.io/stack/35661/default_d47b1279a13b204e7dc42cded198b44fa828dee2.jpg","publishedAt":"2016-08-05T04:07:38Z","canonicalUrl":"/glitch/the-hyperdev-tech-stack-powering-over-1m-containers","previewImageUrl":"https://img.stackshare.io/stack/35661/dd85f8678ee4ef13ab7fcd77398fb5d2d9e19dbb.png","company":{"type":"id","generated":true,"id":"$FeaturedPost:101231795084339381.company","typename":"Company"},"tools":[{"type":"id","generated":false,"id":"Tool:101231773939333405","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773410696721","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773858546548","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773845103618","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773669807419","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773705712932","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773433737219","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773853533403","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231775043834687","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773409399220","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773405612798","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773457672502","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773700412232","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773403188549","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773454477801","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773842107538","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773418092710","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773636491087","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773744147511","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773772085321","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773926852560","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231774802095562","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773777695089","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773924483778","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231774139649395","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773441940942","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231774324000201","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231774287464433","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231776170860553","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231776080604348","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773481952151","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231776081062034","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231776081742532","typename":"Tool"}],"favoriteStacksCount":20,"__typename":"FeaturedPost"},"$FeaturedPost:101231795084339381.company":{"name":"Glitch","__typename":"Company"},"Tool:101231775043834687":{"id":"101231775043834687","name":"Ubuntu","slug":"ubuntu","title":"The leading OS for PC, tablet, phone and cloud","verified":false,"imageUrl":"https://img.stackshare.io/service/3511/cof_orange_hex.jpg","canonicalUrl":"/ubuntu","path":"/ubuntu","votes":456,"fans":58989,"stacks":67801,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773457672502":{"id":"101231773457672502","name":"Trello","slug":"trello","title":"Your entire project, in a single glance","verified":false,"imageUrl":"https://img.stackshare.io/service/109/-CvHThPk_400x400.jpg","canonicalUrl":"/trello","path":"/trello","votes":3708,"fans":37474,"stacks":39413,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773403188549":{"id":"101231773403188549","name":"Amazon CloudFront","slug":"amazon-cloudfront","title":"Content delivery with low latency and high data transfer speeds","verified":false,"imageUrl":"https://img.stackshare.io/service/13/amazon-cloudfront.png","canonicalUrl":"/amazon-cloudfront","path":"/amazon-cloudfront","votes":935,"fans":12089,"stacks":20018,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773454477801":{"id":"101231773454477801","name":"New Relic","slug":"new-relic","title":"New Relic is the industry鈥檚 largest and most comprehensive cloud-based observability platform.","verified":true,"imageUrl":"https://img.stackshare.io/service/103/default_193410db3a7e419c7b436961bf41d733c7346b59.png","canonicalUrl":"/new-relic","path":"/new-relic","votes":1931,"fans":9914,"stacks":21051,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773636491087":{"id":"101231773636491087","name":"Travis CI","slug":"travis-ci","title":"A hosted continuous integration service for open source and private projects","verified":true,"imageUrl":"https://img.stackshare.io/service/460/Lu6cGu0z_400x400.png","canonicalUrl":"/travis-ci","path":"/travis-ci","votes":1751,"fans":8293,"stacks":11088,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773744147511":{"id":"101231773744147511","name":"Vagrant","slug":"vagrant","title":"A tool for building and distributing development environments","verified":true,"imageUrl":"https://img.stackshare.io/service/768/150px-Vagrant.png","canonicalUrl":"/vagrant","path":"/vagrant","votes":1500,"fans":9117,"stacks":9909,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773772085321":{"id":"101231773772085321","name":"Mocha","slug":"mocha","title":"Simple, flexible, fun javascript test framework for node.js & the browser","verified":false,"imageUrl":"https://img.stackshare.io/service/832/mocha.png","canonicalUrl":"/mocha","path":"/mocha","votes":430,"fans":3430,"stacks":4864,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773926852560":{"id":"101231773926852560","name":"CoffeeScript","slug":"coffeescript","title":"A little language that compiles into JavaScript","verified":false,"imageUrl":"https://img.stackshare.io/service/1178/slQydAMv.png","canonicalUrl":"/coffeescript","path":"/coffeescript","votes":1024,"fans":1580,"stacks":2551,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231774802095562":{"id":"101231774802095562","name":"Docker Swarm","slug":"docker-swarm","title":"Native clustering for Docker. Turn a pool of Docker hosts into a single, virtual host.","verified":true,"imageUrl":"https://img.stackshare.io/service/3177/preview.png","canonicalUrl":"/docker-swarm","path":"/docker-swarm","votes":268,"fans":1153,"stacks":753,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773777695089":{"id":"101231773777695089","name":"Browserify","slug":"browserify","title":"Browser-side require() the node.js way","verified":false,"imageUrl":"https://img.stackshare.io/service/849/9esmqty2.png","canonicalUrl":"/browserify","path":"/browserify","votes":261,"fans":582,"stacks":946,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773924483778":{"id":"101231773924483778","name":"Stylus","slug":"stylus","title":"Expressive, robust, feature-rich CSS language built for nodejs","verified":false,"imageUrl":"https://img.stackshare.io/service/1172/stylus.png","canonicalUrl":"/stylus","path":"/stylus","votes":331,"fans":510,"stacks":385,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231774139649395":{"id":"101231774139649395","name":"etcd","slug":"etcd","title":"A distributed consistent key-value store for shared configuration and service discovery","verified":true,"imageUrl":"https://img.stackshare.io/service/1721/etcd.png","canonicalUrl":"/etcd","path":"/etcd","votes":24,"fans":444,"stacks":253,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773441940942":{"id":"101231773441940942","name":"Loggly","slug":"loggly","title":"Unified log analysis & log monitoring","verified":true,"imageUrl":"https://img.stackshare.io/service/83/default_642fc255afad78948f04d7acefa8e11440014888.png","canonicalUrl":"/loggly","path":"/loggly","votes":168,"fans":354,"stacks":273,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231774324000201":{"id":"101231774324000201","name":"UglifyJS","slug":"uglifyjs","title":"A JavaScript parser, minifier, compressor and beautifier toolkit.","verified":false,"imageUrl":"https://img.stackshare.io/service/2203/default_9058af6f02375a99f634f537d727e32df92ac262.png","canonicalUrl":"/uglifyjs","path":"/uglifyjs","votes":0,"fans":95,"stacks":352,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231774287464433":{"id":"101231774287464433","name":"Istanbul","slug":"istanbul","title":"A JS code coverage tool written in JS","verified":false,"imageUrl":"https://img.stackshare.io/service/2105/default_78659c552327b8ff3592c2aa1694ea92c974a8d5.png","canonicalUrl":"/istanbul","path":"/istanbul","votes":0,"fans":34,"stacks":259,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231776170860553":{"id":"101231776170860553","name":"Glitch","slug":"glitch","title":"Code, collaborate, and ship in seconds from your browser","verified":true,"imageUrl":"https://img.stackshare.io/service/5526/default_e717fa2d915caccd07943d84cd60bbb15470a825.jpg","canonicalUrl":"/glitch","path":"/glitch","votes":41,"fans":194,"stacks":72,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231776080604348":{"id":"101231776080604348","name":"Ace","slug":"ace","title":"Embeddable code editor written in JavaScript","verified":true,"imageUrl":"https://img.stackshare.io/service/5372/ACE-Cloud9-EDITOR-Social-Media-icon.png","canonicalUrl":"/ace","path":"/ace","votes":5,"fans":95,"stacks":28,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773481952151":{"id":"101231773481952151","name":"FogBugz","slug":"fogbugz","title":"The world's easiest bug tracking system","verified":false,"imageUrl":"https://img.stackshare.io/service/153/xMO9jDp5_400x400.jpg","canonicalUrl":"/fogbugz","path":"/fogbugz","votes":0,"fans":43,"stacks":38,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231776081062034":{"id":"101231776081062034","name":"Firepad","slug":"firepad","title":"An open-source, real-time, collaborative code and text editing library built on Firebase","verified":true,"imageUrl":"https://img.stackshare.io/service/5373/363cdca41f5d5d30c51c56b083451385.png","canonicalUrl":"/firepad","path":"/firepad","votes":0,"fans":27,"stacks":7,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231776081742532":{"id":"101231776081742532","name":"Hamlet","slug":"hamlet","title":"Simple and powerful reactive templating","verified":false,"imageUrl":"https://img.stackshare.io/service/5374/49f0dNfY.png","canonicalUrl":"/hamlet","path":"/hamlet","votes":0,"fans":15,"stacks":3,"following":false,"followContext":null,"__typename":"Tool"},"$ROOT_QUERY.stackupBySlug({\"slug\":\"ansible-vs-terraform\"}).featuredPosts({\"first\":8}).edges.5":{"node":{"type":"id","generated":false,"id":"FeaturedPost:101231795084339381","typename":"FeaturedPost"},"__typename":"FeaturedPostEdge"},"FeaturedPost:101231793224833871":{"id":"101231793224833871","views":6431,"title":"How Opsee Chose A Container Orchestration Platform","imageUrl":"https://img.stackshare.io/stack/31953/default_61e3ab0f9942d5b6635a5a3058f9ffca97af70b8.jpg","publishedAt":"2016-05-27T05:01:09Z","canonicalUrl":"/opsee-co/how-opsee-chose-a-container-orchestration-platform","previewImageUrl":"https://img.stackshare.io/stack/31953/903d02f0d556a3d133acdf26e10a3fbcfa27035d.jpg","company":{"type":"id","generated":true,"id":"$FeaturedPost:101231793224833871.company","typename":"Company"},"tools":[{"type":"id","generated":false,"id":"Tool:101231773410696721","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773669807419","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773405612798","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231774215979427","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773700412232","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773842107538","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773523090140","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231774215500019","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231774492574471","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773620969295","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773501041914","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773615579247","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773423027961","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773618167288","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773511551351","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773615096541","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773623413723","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773618592622","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773632626053","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231774096605322","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773759067771","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231774925962064","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231775605587227","typename":"Tool"}],"favoriteStacksCount":12,"__typename":"FeaturedPost"},"$FeaturedPost:101231793224833871.company":{"name":"Opsee Co","__typename":"Company"},"Tool:101231774215979427":{"id":"101231774215979427","name":"AWS Lambda","slug":"aws-lambda","title":"Automatically run code in response to modifications to objects in Amazon S3 buckets, messages in Kinesis streams, or updates in DynamoDB","verified":false,"imageUrl":"https://img.stackshare.io/service/1909/aws-lambda.png","canonicalUrl":"/aws-lambda","path":"/aws-lambda","votes":427,"fans":19863,"stacks":22094,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773620969295":{"id":"101231773620969295","name":"Amazon CloudWatch","slug":"amazon-cloudwatch","title":"Monitor AWS resources and custom metrics generated by your applications and services","verified":false,"imageUrl":"https://img.stackshare.io/service/401/amazon-cloudwatch.png","canonicalUrl":"/amazon-cloudwatch","path":"/amazon-cloudwatch","votes":214,"fans":9138,"stacks":11104,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773423027961":{"id":"101231773423027961","name":"Mandrill","slug":"mandrill","title":"Send transactional, triggered, and personalized email, then track results.","verified":false,"imageUrl":"https://img.stackshare.io/service/46/0skjzkftgup526281tkn.png","canonicalUrl":"/mandrill","path":"/mandrill","votes":925,"fans":2241,"stacks":4428,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773511551351":{"id":"101231773511551351","name":"AWS Elastic Beanstalk","slug":"aws-elastic-beanstalk","title":"Quickly deploy and manage applications in the AWS cloud. ","verified":false,"imageUrl":"https://img.stackshare.io/service/210/aws-elastic-beanstalk.png","canonicalUrl":"/aws-elastic-beanstalk","path":"/aws-elastic-beanstalk","votes":240,"fans":2200,"stacks":2155,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773623413723":{"id":"101231773623413723","name":"AWS CloudFormation","slug":"aws-cloudformation","title":"Create and manage a collection of related AWS resources","verified":false,"imageUrl":"https://img.stackshare.io/service/411/aws-cloudformation.png","canonicalUrl":"/aws-cloudformation","path":"/aws-cloudformation","votes":89,"fans":1619,"stacks":1606,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773618592622":{"id":"101231773618592622","name":"Amazon SNS","slug":"amazon-sns","title":"Fully managed push messaging service","verified":false,"imageUrl":"https://img.stackshare.io/service/396/amazon-sns.png","canonicalUrl":"/amazon-sns","path":"/amazon-sns","votes":18,"fans":1433,"stacks":1326,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231774096605322":{"id":"101231774096605322","name":"CoreOS","slug":"coreos","title":"Linux for Massive Server Deployments","verified":true,"imageUrl":"https://img.stackshare.io/service/1608/92f941aa760503ef8552a9fbc77ef9b6.png","canonicalUrl":"/coreos","path":"/coreos","votes":47,"fans":354,"stacks":226,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773759067771":{"id":"101231773759067771","name":"Quay.io","slug":"quay-io","title":"Secure hosting for private Docker repositories","verified":true,"imageUrl":"https://img.stackshare.io/service/804/179b16534eda7c40ce8c7f1705c9fd18.png","canonicalUrl":"/quay-io","path":"/quay-io","votes":7,"fans":95,"stacks":63,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231774925962064":{"id":"101231774925962064","name":"Convox","slug":"convox","title":"Launch a Private Cloud in Minutes. The simplicity of Heroku. The power of AWS.","verified":true,"imageUrl":"https://img.stackshare.io/service/3368/preview.png","canonicalUrl":"/convox","path":"/convox","votes":37,"fans":68,"stacks":42,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231775605587227":{"id":"101231775605587227","name":"Opsee","slug":"opsee","title":"Continuously test your services and deploy with confidence. Effortless AWS monitoring, built for developers.","verified":true,"imageUrl":"https://img.stackshare.io/service/4523/iW5SxULr.png","canonicalUrl":"/opsee","path":"/opsee","votes":0,"fans":22,"stacks":7,"following":false,"followContext":null,"__typename":"Tool"},"$ROOT_QUERY.stackupBySlug({\"slug\":\"ansible-vs-terraform\"}).featuredPosts({\"first\":8}).edges.6":{"node":{"type":"id","generated":false,"id":"FeaturedPost:101231793224833871","typename":"FeaturedPost"},"__typename":"FeaturedPostEdge"},"FeaturedPost:101231789624828158":{"id":"101231789624828158","views":20832,"title":"Scaling Zapier to Automate Billions of Tasks","imageUrl":"https://img.stackshare.io/stack/25100/default_c7e38cfcdd58ce686ec6d1343a14a67c2686c8f6.png","publishedAt":"2016-02-04T18:44:12Z","canonicalUrl":"/zapier/scaling-zapier-to-automate-billions-of-tasks","previewImageUrl":"https://img.stackshare.io/stack/25100/815475d73317d4eadfd9dfce06f6545ce30a9489.gif","company":{"type":"id","generated":true,"id":"$FeaturedPost:101231789624828158.company","typename":"Company"},"tools":[{"type":"id","generated":false,"id":"Tool:101231773939333405","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773410696721","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773837179153","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773669807419","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773849098825","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773851859414","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773705712932","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773433737219","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773895058604","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773703650742","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773854768982","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773405612798","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773457672502","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773837565192","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231774125163302","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773774313645","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231775357043443","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231774215979427","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773864300849","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231774781423216","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773970332063","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773700412232","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231774565594919","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773450178959","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773523090140","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773775509982","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773501596063","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231774492574471","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773855606480","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773421693052","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773615096541","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773871944512","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773613893180","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773563008013","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773628223844","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231775525897727","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231774782086471","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231774450050488","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773813299908","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773545754049","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773565026135","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231775514423534","typename":"Tool"}],"favoriteStacksCount":53,"__typename":"FeaturedPost"},"$FeaturedPost:101231789624828158.company":{"name":"Zapier","__typename":"Company"},"Tool:101231773851859414":{"id":"101231773851859414","name":"MySQL","slug":"mysql","title":"The world's most popular open source database","verified":false,"imageUrl":"https://img.stackshare.io/service/1025/logo-mysql-170x170.png","canonicalUrl":"/mysql","path":"/mysql","votes":3729,"fans":103890,"stacks":106659,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773895058604":{"id":"101231773895058604","name":"npm","slug":"npm","title":"The package manager for JavaScript.","verified":true,"imageUrl":"https://img.stackshare.io/service/1120/lejvzrnlpb308aftn31u.png","canonicalUrl":"/npm","path":"/npm","votes":1633,"fans":81944,"stacks":86515,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773837565192":{"id":"101231773837565192","name":"Django","slug":"django","title":"The Web framework for perfectionists with deadlines","verified":false,"imageUrl":"https://img.stackshare.io/service/994/4aGjtNQv.png","canonicalUrl":"/django","path":"/django","votes":4006,"fans":34332,"stacks":32682,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231774125163302":{"id":"101231774125163302","name":"Webpack","slug":"webpack","title":"A bundler for javascript and friends","verified":true,"imageUrl":"https://img.stackshare.io/service/1682/IMG_4636.PNG","canonicalUrl":"/webpack","path":"/webpack","votes":749,"fans":30023,"stacks":36000,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231775357043443":{"id":"101231775357043443","name":"Redux","slug":"reduxjs","title":"Predictable state container for JavaScript apps","verified":false,"imageUrl":"https://img.stackshare.io/service/4074/13142323.png","canonicalUrl":"/reduxjs","path":"/reduxjs","votes":661,"fans":24624,"stacks":26628,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773864300849":{"id":"101231773864300849","name":"RabbitMQ","slug":"rabbitmq","title":"Open source multiprotocol messaging broker","verified":false,"imageUrl":"https://img.stackshare.io/service/1061/default_df93e9a30d27519161b39d8c1d5c223c1642d187.jpg","canonicalUrl":"/rabbitmq","path":"/rabbitmq","votes":522,"fans":19275,"stacks":18416,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231774781423216":{"id":"101231774781423216","name":"Docker Compose","slug":"docker-compose","title":"Define and run multi-container applications with Docker","verified":true,"imageUrl":"https://img.stackshare.io/service/3136/docker-compose.png","canonicalUrl":"/docker-compose","path":"/docker-compose","votes":501,"fans":17610,"stacks":18554,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231774565594919":{"id":"101231774565594919","name":"Babel","slug":"babel","title":"Use next generation JavaScript, today.","verified":true,"imageUrl":"https://img.stackshare.io/service/2739/-1wfGjNw.png","canonicalUrl":"/babel","path":"/babel","votes":390,"fans":12771,"stacks":17899,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773450178959":{"id":"101231773450178959","name":"Stripe","slug":"stripe","title":"Payments for developers","verified":true,"imageUrl":"https://img.stackshare.io/service/97/eW6tXeq3.png","canonicalUrl":"/stripe","path":"/stripe","votes":1536,"fans":13151,"stacks":16355,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773775509982":{"id":"101231773775509982","name":"gulp","slug":"gulp","title":"The streaming build system","verified":false,"imageUrl":"https://img.stackshare.io/service/844/iruTC031.png","canonicalUrl":"/gulp","path":"/gulp","votes":1693,"fans":10724,"stacks":12501,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773855606480":{"id":"101231773855606480","name":"Memcached","slug":"memcached","title":"High-performance, distributed memory object caching system","verified":false,"imageUrl":"https://img.stackshare.io/service/1040/hDNnpa4a_400x400.jpg","canonicalUrl":"/memcached","path":"/memcached","votes":470,"fans":6195,"stacks":6753,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773421693052":{"id":"101231773421693052","name":"Mailgun","slug":"mailgun","title":"The Email Service for Developers.","verified":true,"imageUrl":"https://img.stackshare.io/service/44/ICON_MAILGUN_NOFX.png","canonicalUrl":"/mailgun","path":"/mailgun","votes":654,"fans":4915,"stacks":7169,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773871944512":{"id":"101231773871944512","name":"Celery","slug":"celery","title":"Distributed task queue","verified":false,"imageUrl":"https://img.stackshare.io/service/1075/celery.png","canonicalUrl":"/celery","path":"/celery","votes":279,"fans":1843,"stacks":1519,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773613893180":{"id":"101231773613893180","name":"Amazon Redshift","slug":"amazon-redshift","title":"Fast, fully managed, petabyte-scale data warehouse service","verified":false,"imageUrl":"https://img.stackshare.io/service/386/amazon-redshift.png","canonicalUrl":"/amazon-redshift","path":"/amazon-redshift","votes":107,"fans":1531,"stacks":1454,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773563008013":{"id":"101231773563008013","name":"Zapier","slug":"zapier","title":"Automate tasks between other online services (services like Salesforce, Basecamp, Gmail, and 400+ more)","verified":true,"imageUrl":"https://img.stackshare.io/service/286/0bd8e9aaccec949490082ad22c7ee60f.png","canonicalUrl":"/zapier","path":"/zapier","votes":114,"fans":1395,"stacks":1492,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773628223844":{"id":"101231773628223844","name":"Puppet Labs","slug":"puppet","title":"Server automation framework and application","verified":true,"imageUrl":"https://img.stackshare.io/service/421/954f7381089ac290b4690c5ffd9dd7d3.png","canonicalUrl":"/puppet","path":"/puppet","votes":225,"fans":946,"stacks":975,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231775525897727":{"id":"101231775525897727","name":"Graylog","slug":"graylog","title":"Open source log management that actually works","verified":true,"imageUrl":"https://img.stackshare.io/service/4392/_HU28D42.png","canonicalUrl":"/graylog","path":"/graylog","votes":69,"fans":839,"stacks":551,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231774782086471":{"id":"101231774782086471","name":"Docker Machine","slug":"docker-machine","title":"Machine management for a container-centric world","verified":true,"imageUrl":"https://img.stackshare.io/service/3137/fbbb494a7eef5f9278c6967b6072ca3e.png","canonicalUrl":"/docker-machine","path":"/docker-machine","votes":12,"fans":574,"stacks":430,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231774450050488":{"id":"101231774450050488","name":"CodeMirror","slug":"codemirror","title":"A versatile text editor implemented in JavaScript for the browser","verified":false,"imageUrl":"https://img.stackshare.io/service/2490/E_fCaAi6.png","canonicalUrl":"/codemirror","path":"/codemirror","votes":15,"fans":289,"stacks":406,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773813299908":{"id":"101231773813299908","name":"StatsD","slug":"statsd","title":"Simple daemon for easy stats aggregation","verified":false,"imageUrl":"https://img.stackshare.io/service/932/default_b8c7d49298132d46fbef113905bcba1896158113.png","canonicalUrl":"/statsd","path":"/statsd","votes":31,"fans":340,"stacks":292,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773545754049":{"id":"101231773545754049","name":"Help Scout","slug":"help-scout","title":"A help desk for teams that insist on a delightful customer experience","verified":true,"imageUrl":"https://img.stackshare.io/service/267/default_251e3f50802b29c4b3ecded4242f401a81eb17d5.png","canonicalUrl":"/help-scout","path":"/help-scout","votes":60,"fans":150,"stacks":341,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773565026135":{"id":"101231773565026135","name":"HackPad","slug":"hackpad","title":"Smart collaborative documents. ","verified":false,"imageUrl":"https://img.stackshare.io/service/289/oo1SaTNQ.png","canonicalUrl":"/hackpad","path":"/hackpad","votes":17,"fans":71,"stacks":54,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231775514423534":{"id":"101231775514423534","name":"McRouter","slug":"mcrouter","title":"A memcached protocol router for scaling memcached deployments, by Facebook","verified":true,"imageUrl":"https://img.stackshare.io/service/4370/G7xgmEZ.png","canonicalUrl":"/mcrouter","path":"/mcrouter","votes":0,"fans":66,"stacks":20,"following":false,"followContext":null,"__typename":"Tool"},"$ROOT_QUERY.stackupBySlug({\"slug\":\"ansible-vs-terraform\"}).featuredPosts({\"first\":8}).edges.7":{"node":{"type":"id","generated":false,"id":"FeaturedPost:101231789624828158","typename":"FeaturedPost"},"__typename":"FeaturedPostEdge"},"Job:109211419920600430":{"name":"Senior Systems Engineer","id":"109211419920600430","angellistJobUrl":"https://careers.cbre.com/careers/JobDetail/Senior-Systems-Engineer/80671","title":"Senior Systems Engineer","location":"United Kingdom of Great Britain and Northern Ireland England London","private":false,"services":[{"type":"id","generated":false,"id":"Tool:109159725469138645","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:107608472495246059","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:106697867739736497","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:106306652202618132","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231775138602868","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231774642216238","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773700412232","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773513893852","typename":"Tool"}],"company":{"type":"id","generated":false,"id":"Company:107160118414842491","typename":"Company"},"__typename":"Job"},"Tool:109159725469138645":{"id":"109159725469138645","name":"Middleware","slug":"middleware","title":"Unified, real-time cloud observability platform","verified":false,"imageUrl":"https://img.stackshare.io/service/47908/default_9be617a5e2c664be409e91cf0fe77f20478ac4b4.jpg","canonicalUrl":"/middleware","path":"/middleware","votes":0,"fans":1,"stacks":1,"following":false,"followContext":null,"__typename":"Tool"},"Tool:107608472495246059":{"id":"107608472495246059","name":"age","slug":"age","title":"A simple, modern and secure Go encryption tool","verified":false,"imageUrl":"https://img.stackshare.io/service/40373/default_d7b01785a189ee839cb857e2e2eda6a41a3f8e77.png","canonicalUrl":"/age","path":"/age","votes":0,"fans":5,"stacks":4,"following":false,"followContext":null,"__typename":"Tool"},"Tool:106697867739736497":{"id":"106697867739736497","name":"Mind","slug":"mind","title":"Video conferences and chat for business","verified":false,"imageUrl":"https://img.stackshare.io/service/33826/default_3c23ba6e1cf80d146a5b6f44966c5db32d4456fb.png","canonicalUrl":"/mind","path":"/mind","votes":0,"fans":9,"stacks":5,"following":false,"followContext":null,"__typename":"Tool"},"Tool:106306652202618132":{"id":"106306652202618132","name":"Schedule","slug":"schedule","title":"Appointment scheduling software that helps schedule online appointments for businesses","verified":true,"imageUrl":"https://img.stackshare.io/service/25670/default_627149174da6df340278777eb96beffc83108fba.jpg","canonicalUrl":"/schedule","path":"/schedule","votes":0,"fans":33,"stacks":33,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231775138602868":{"id":"101231775138602868","name":"PowerShell","slug":"powershell","title":"A task automation and configuration management framework","verified":true,"imageUrl":"https://img.stackshare.io/service/3681/powershell-logo.png","canonicalUrl":"/powershell","path":"/powershell","votes":0,"fans":1266,"stacks":3451,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231774642216238":{"id":"101231774642216238","name":"Windows","slug":"windows","title":"A group of several graphical operating system families, all of which are developed by Microsoft","verified":true,"imageUrl":"https://img.stackshare.io/service/2881/U54M_YbJ_400x400.jpg","canonicalUrl":"/windows","path":"/windows","votes":2,"fans":964,"stacks":885,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773513893852":{"id":"101231773513893852","name":"Microsoft Azure","slug":"microsoft-azure","title":"Integrated cloud services and infrastructure to support computing, database, analytics, mobile, and web scenarios.","verified":true,"imageUrl":"https://img.stackshare.io/service/213/default_88defae415fcb9cd0ac5d36c1ed27e74133c6287.jpg","canonicalUrl":"/microsoft-azure","path":"/microsoft-azure","votes":768,"fans":17547,"stacks":21830,"following":false,"followContext":null,"__typename":"Tool"},"Company:107160118414842491":{"imageUrl":"https://img.stackshare.io/company/171068/default_c0b85bbfd82e34f35a10a5b6ec5689ff9ea85dd2.png","name":"CBRE","id":"107160118414842491","path":"/companies/cbre","__typename":"Company"},"$ROOT_QUERY.stackupBySlug({\"slug\":\"ansible-vs-terraform\"}).jobs({\"first\":8}).edges.0":{"node":{"type":"id","generated":false,"id":"Job:109211419920600430","typename":"Job"},"__typename":"JobEdge"},"Job:108706929966971156":{"name":"Software Engineer, Cloud Systems","id":"108706929966971156","angellistJobUrl":"https://www.pinterestcareers.com/job-form?gh_jid=3846309","title":"Software Engineer, Cloud Systems","location":"San Francisco, CA, US; Seattle, WA, US","private":false,"services":[{"type":"id","generated":false,"id":"Tool:107846281190496441","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773970332063","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773838011785","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773837179153","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773700412232","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773628223844","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773405612798","typename":"Tool"}],"company":{"type":"id","generated":false,"id":"Company:101231709530029071","typename":"Company"},"__typename":"Job"},"Tool:107846281190496441":{"id":"107846281190496441","name":"Dream","slug":"dream-framework","title":"Tidy, feature-complete Web framework","verified":false,"imageUrl":"https://img.stackshare.io/service/40514/default_c19d22a0eb52861815d6674d4209c48b26039df7.png","canonicalUrl":"/dream-framework","path":"/dream-framework","votes":0,"fans":4,"stacks":0,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231773838011785":{"id":"101231773838011785","name":"Java","slug":"java","title":"A concurrent, class-based, object-oriented, language specifically designed to have as few implementation dependencies as possible","verified":false,"imageUrl":"https://img.stackshare.io/service/995/K85ZWV2F.png","canonicalUrl":"/java","path":"/java","votes":3670,"fans":100851,"stacks":111246,"following":false,"followContext":null,"__typename":"Tool"},"Company:101231709530029071":{"imageUrl":"https://img.stackshare.io/company/260/default_c077fc04bb219001b7a1ab10f90ebcdb00c143a9.png","name":"Pinterest","id":"101231709530029071","path":"/companies/pinterest","__typename":"Company"},"$ROOT_QUERY.stackupBySlug({\"slug\":\"ansible-vs-terraform\"}).jobs({\"first\":8}).edges.1":{"node":{"type":"id","generated":false,"id":"Job:108706929966971156","typename":"Job"},"__typename":"JobEdge"},"Job:108706925846489721":{"name":"Site Reliability Engineer (Contract)","id":"108706925846489721","angellistJobUrl":"https://www.pinterestcareers.com/job-form?gh_jid=3887144","title":"Site Reliability Engineer (Contract)","location":"San Francisco, CA, US; ","private":false,"services":[{"type":"id","generated":false,"id":"Tool:108322405266514059","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:107846281190496441","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231776004793210","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231775501546860","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231775271761894","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773970332063","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773837179153","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773700412232","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773669807419","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773405612798","typename":"Tool"}],"company":{"type":"id","generated":false,"id":"Company:101231709530029071","typename":"Company"},"__typename":"Job"},"Tool:108322405266514059":{"id":"108322405266514059","name":"Infra","slug":"infra-hq","title":"Open-source access management for Kubernetes","verified":false,"imageUrl":"https://img.stackshare.io/service/40791/default_a4357de5c49d215b8aed95cbec211f1cf5885911.jpg","canonicalUrl":"/infra-hq","path":"/infra-hq","votes":0,"fans":14,"stacks":10,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231776004793210":{"id":"101231776004793210","name":"OpenLDAP","slug":"openldap","title":"An open source implementation of the Lightweight Directory Access Protocol","verified":false,"imageUrl":"https://img.stackshare.io/service/5225/zPH8xLZQ_400x400.jpg","canonicalUrl":"/openldap","path":"/openldap","votes":0,"fans":152,"stacks":86,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231775501546860":{"id":"101231775501546860","name":"Nix","slug":"nix","title":"A package manager for Linux and other Unix systems ","verified":false,"imageUrl":"https://img.stackshare.io/service/4348/ET9J1uY-_400x400.png","canonicalUrl":"/nix","path":"/nix","votes":0,"fans":133,"stacks":166,"following":false,"followContext":null,"__typename":"Tool"},"Tool:101231775271761894":{"id":"101231775271761894","name":"FreeIPA","slug":"freeipa","title":"Manage Linux users and client hosts in your realm from one central location with CLI, Web UI or RPC access","verified":false,"imageUrl":"https://img.stackshare.io/service/3931/New_Project__3_.jpg","canonicalUrl":"/freeipa","path":"/freeipa","votes":2,"fans":95,"stacks":38,"following":false,"followContext":null,"__typename":"Tool"},"$ROOT_QUERY.stackupBySlug({\"slug\":\"ansible-vs-terraform\"}).jobs({\"first\":8}).edges.2":{"node":{"type":"id","generated":false,"id":"Job:108706925846489721","typename":"Job"},"__typename":"JobEdge"},"Job:108446458915867213":{"name":"Engineering Manager, Cloud Systems","id":"108446458915867213","angellistJobUrl":"https://www.pinterestcareers.com/job/15989159/engineering-manager-cloud-systems-seattle-wa/?gh_src=9b2671b21&utm_source=stackshare&utm_medium=job-board&utm_campaign=2021-contracts","title":"Engineering Manager, Cloud Systems","location":"San Francisco, CA, US; Palo Alto, CA, US; Seattle, WA, US; New York, NY, US","private":false,"services":[{"type":"id","generated":false,"id":"Tool:107846281190496441","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773970332063","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773838011785","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773837179153","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773700412232","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773628223844","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773405612798","typename":"Tool"}],"company":{"type":"id","generated":false,"id":"Company:101231709530029071","typename":"Company"},"__typename":"Job"},"$ROOT_QUERY.stackupBySlug({\"slug\":\"ansible-vs-terraform\"}).jobs({\"first\":8}).edges.3":{"node":{"type":"id","generated":false,"id":"Job:108446458915867213","typename":"Job"},"__typename":"JobEdge"},"$ROOT_QUERY.stackupBySlug({\"slug\":\"ansible-vs-terraform\"}).jobs({\"first\":8}).edges.4":{"node":{"type":"id","generated":false,"id":"Job:108706929966971156","typename":"Job"},"__typename":"JobEdge"},"$ROOT_QUERY.stackupBySlug({\"slug\":\"ansible-vs-terraform\"}).jobs({\"first\":8}).edges.5":{"node":{"type":"id","generated":false,"id":"Job:108706925846489721","typename":"Job"},"__typename":"JobEdge"},"Job:108672965648831930":{"name":"Engineering Manager, Cloud Systems","id":"108672965648831930","angellistJobUrl":"https://www.pinterestcareers.com/job-form?gh_jid=4223303","title":"Engineering Manager, Cloud Systems","location":"San Francisco, CA, US; Palo Alto, CA, US; Seattle, WA, US; New York, NY, US","private":false,"services":[{"type":"id","generated":false,"id":"Tool:108322405266514059","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:107846281190496441","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773970332063","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773838011785","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773837179153","typename":"Tool"},{"type":"id","generated":false,"id":"Tool:101231773405612798","typename":"Tool"}],"company":{"type":"id","generated":false,"id":"Company:101231709530029071","typename":"Company"},"__typename":"Job"},"$ROOT_QUERY.stackupBySlug({\"slug\":\"ansible-vs-terraform\"}).jobs({\"first\":8}).edges.6":{"node":{"type":"id","generated":false,"id":"Job:108672965648831930","typename":"Job"},"__typename":"JobEdge"},"$ROOT_QUERY.stackupBySlug({\"slug\":\"ansible-vs-terraform\"}).jobs({\"first\":8}).edges.7":{"node":{"type":"id","generated":false,"id":"Job:108446458915867213","typename":"Job"},"__typename":"JobEdge"},"$ROOT_QUERY.stackupBySlug({\"slug\":\"ansible-vs-terraform\"}).jobs({\"first\":8})":{"edges":[{"type":"id","generated":true,"id":"$ROOT_QUERY.stackupBySlug({\"slug\":\"ansible-vs-terraform\"}).jobs({\"first\":8}).edges.0","typename":"JobEdge"},{"type":"id","generated":true,"id":"$ROOT_QUERY.stackupBySlug({\"slug\":\"ansible-vs-terraform\"}).jobs({\"first\":8}).edges.1","typename":"JobEdge"},{"type":"id","generated":true,"id":"$ROOT_QUERY.stackupBySlug({\"slug\":\"ansible-vs-terraform\"}).jobs({\"first\":8}).edges.2","typename":"JobEdge"},{"type":"id","generated":true,"id":"$ROOT_QUERY.stackupBySlug({\"slug\":\"ansible-vs-terraform\"}).jobs({\"first\":8}).edges.3","typename":"JobEdge"},{"type":"id","generated":true,"id":"$ROOT_QUERY.stackupBySlug({\"slug\":\"ansible-vs-terraform\"}).jobs({\"first\":8}).edges.4","typename":"JobEdge"},{"type":"id","generated":true,"id":"$ROOT_QUERY.stackupBySlug({\"slug\":\"ansible-vs-terraform\"}).jobs({\"first\":8}).edges.5","typename":"JobEdge"},{"type":"id","generated":true,"id":"$ROOT_QUERY.stackupBySlug({\"slug\":\"ansible-vs-terraform\"}).jobs({\"first\":8}).edges.6","typename":"JobEdge"},{"type":"id","generated":true,"id":"$ROOT_QUERY.stackupBySlug({\"slug\":\"ansible-vs-terraform\"}).jobs({\"first\":8}).edges.7","typename":"JobEdge"}],"__typename":"JobConnection"}}</script> <!-- glamorIds: 180 --> <script type="application/json" id="Stackup-glamor-f8f92b7a-a991-49c6-81de-c37a73166cd9">["1htug8r","1yodi52","iepywa","x5hg3h","u0iaox","9ilv8v","1ag7ge9","ld8qhm","11b98zt","i52n91","13sfqhu","1iqua1m","81jah4","69zjs9","8a04gk","1m38k02","162qu2y","p797gu","1drwozb","gbti5j","1ahj942","1an0suy","14pk3xx","1o4togz","n746ki","12alag6","1v4wqws","7c9av6","r1wkvc","1vusbpb","4gnhqq","1jka35","26la4","yawzxl","1aswmtz","qrny8b","1176rj6","1njwzsr","zkwjas","8sc56q","1d2ae58","1xq3kt1","3vlw85","1anvsjr","169quga","msbgqg","avtieu","omocl","pn8ojz","ii8qy4","jaw8ve","19hrebc","5k0ecd","86zjul","1di6wpo","lr10t7","4yzqpf","st9eg3","x7ngfe","ihgrxl","124gz8p","1i4hfqi","2urik6","1cuq2n9","1cl6o07","172fe00","1i2jin4","1f94cd7","f8hv9w","uxqild","6nrkpz","1mlbi0l","1cda8k4","2an9kq","5x5cr6","rsz8c","p8n7zj","1uq0dwx","1p6gwer","acfjt6","w707sh","14bxxd1","1hlwa6q","f9zb2m","1wdjt5z","1ke07jm","4pt7vy","mta8ak","1pwtf47","13fg6qi","4lwqz5","4d5oui","ptavxb","10pc7td","1ukyolz","1uackhz","1ofkegx","1xexurq","1cqgl9p","p223ph","cn7d1w","1fj3l7d","i272tr","56ijgy","1l7t0dr","i5u9v5","1ewdw7x","ih8ay1","17niv7d","6mpj06","nio1yx","ak2nbp","9yycaw","leu1cr","156fhm0","10hy8cb","pvufaf","f7loz8","fa6ece","vbfwyr","1gtwocl","1kcdhc3","cuzej8","12h9n7t","m2gwm","14kdfdp","lscypq","maw68b","1i8b05s","wdkc2c","z9ms26","6uh2e7","t68yd0","1rz3855","i6njnm","1rla8dl","1cm2u5n","lhxxg6","jyena0","s6ccv3","1olkybm","138fyst","1xjq47k","1enuxn2","1v2ezdc","n6mbbq","oa3yz4","1g9kten","yzfa9h","uw1ldh","xkasvz","atv6j6","1m8tyev","1vf0ygt","utnqcw","ds0hbm","dg4ww9","1dp4k20","ztg526","1srb7t4","1pz1q9u","gyrv08","vbbua8","1r3kfuo","1iv3e1o","1ob9em9","1mpii3w","z3du7b","1s3pndt","1j2w1cg","1b2ktnx","103289b","lnzci0","odgfgk","13nf4of","xd3exe","1luzdj7","1i9dr9t","1048up1","wu8y54"]</script> <style>@-webkit-keyframes animation_1htug8r{to{transform:rotate(360deg);-webkit-transform:rotate(360deg);}}@-moz-keyframes animation_1htug8r{to{transform:rotate(360deg);-webkit-transform:rotate(360deg);}}@-o-keyframes animation_1htug8r{to{transform:rotate(360deg);-webkit-transform:rotate(360deg);}}@keyframes animation_1htug8r{to{transform:rotate(360deg);-webkit-transform:rotate(360deg);}}@-webkit-keyframes animation_1yodi52{0%{background-position:0 0;}100%{background-position:100em 0;}}@-moz-keyframes animation_1yodi52{0%{background-position:0 0;}100%{background-position:100em 0;}}@-o-keyframes animation_1yodi52{0%{background-position:0 0;}100%{background-position:100em 0;}}@keyframes animation_1yodi52{0%{background-position:0 0;}100%{background-position:100em 0;}}@-webkit-keyframes animation_iepywa{0%, 100%{opacity:0;}50%{opacity:1;}}@-moz-keyframes animation_iepywa{0%, 100%{opacity:0;}50%{opacity:1;}}@-o-keyframes animation_iepywa{0%, 100%{opacity:0;}50%{opacity:1;}}@keyframes animation_iepywa{0%, 100%{opacity:0;}50%{opacity:1;}}@-webkit-keyframes animation_x5hg3h{100%{stroke-dashoffset:0;}}@-moz-keyframes animation_x5hg3h{100%{stroke-dashoffset:0;}}@-o-keyframes animation_x5hg3h{100%{stroke-dashoffset:0;}}@keyframes animation_x5hg3h{100%{stroke-dashoffset:0;}}@-webkit-keyframes animation_u0iaox{0%, 100%{transform:none;-webkit-transform:none;}50%{transform:scale3d(1.1, 1.1, 1);-webkit-transform:scale3d(1.1, 1.1, 1);}}@-moz-keyframes animation_u0iaox{0%, 100%{transform:none;-webkit-transform:none;}50%{transform:scale3d(1.1, 1.1, 1);-webkit-transform:scale3d(1.1, 1.1, 1);}}@-o-keyframes animation_u0iaox{0%, 100%{transform:none;-webkit-transform:none;}50%{transform:scale3d(1.1, 1.1, 1);-webkit-transform:scale3d(1.1, 1.1, 1);}}@keyframes animation_u0iaox{0%, 100%{transform:none;-webkit-transform:none;}50%{transform:scale3d(1.1, 1.1, 1);-webkit-transform:scale3d(1.1, 1.1, 1);}}@-webkit-keyframes animation_9ilv8v{100%{box-shadow:inset 0px 0px 0px 30px #068dfe;}}@-moz-keyframes animation_9ilv8v{100%{box-shadow:inset 0px 0px 0px 30px #068dfe;}}@-o-keyframes animation_9ilv8v{100%{box-shadow:inset 0px 0px 0px 30px #068dfe;}}@keyframes animation_9ilv8v{100%{box-shadow:inset 0px 0px 0px 30px #068dfe;}}.css-1ag7ge9,[data-css-1ag7ge9]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:400;font-size:13px;line-height:1.7;letter-spacing:normal;-webkit-font-smoothing:antialiased;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;flex-wrap:wrap;-webkit-box-lines:multiple;-webkit-flex-wrap:wrap;}@media only screen and (max-width: 812px){.css-1ag7ge9 > a,[data-css-1ag7ge9] > a{text-align:center;}}.css-ld8qhm,[data-css-ld8qhm]{text-decoration:none;cursor:pointer;color:#c2c2c2;}.css-ld8qhm:hover,[data-css-ld8qhm]:hover{color:#068dfe;}.css-11b98zt,[data-css-11b98zt]{color:#c2c2c2;margin:0 5px 0 5px;}.css-11b98zt::after,[data-css-11b98zt]::after{content:"/";}.css-i52n91,[data-css-i52n91]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:600;font-size:18px;line-height:1.7;letter-spacing:normal;-webkit-font-smoothing:antialiased;color:#333;margin:0;}.css-13sfqhu,[data-css-13sfqhu]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:400;font-size:13px;line-height:1.69;letter-spacing:normal;-webkit-font-smoothing:antialiased;margin-top:8px;color:#707070;}.css-1iqua1m,[data-css-1iqua1m]{height:32px;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;justify-content:center;align-items:center;border-radius:2px;border:1px solid #068dfe;font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-size:13px;font-weight:400;letter-spacing:0.8px;background-color:#068dfe;color:#fff;text-decoration:none;cursor:pointer;-webkit-font-smoothing:antialiased;padding-top:0;padding-bottom:0;padding-left:16px;padding-right:16px;width:auto;outline:none;-webkit-box-pack:center;-webkit-justify-content:center;-webkit-box-align:center;-webkit-align-items:center;}.css-1iqua1m:hover,[data-css-1iqua1m]:hover{background-color:rgba(6,141,254,0.8);border-color:rgba(6,141,254,0.79);color:#fff;}.css-81jah4,[data-css-81jah4]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;justify-content:center;margin:50px 0;-webkit-box-pack:center;-webkit-justify-content:center;}.css-69zjs9,[data-css-69zjs9]{background:#f7f7f7;width:100%;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;justify-content:center;padding-top:68px;padding-bottom:68px;-webkit-box-pack:center;-webkit-justify-content:center;}@media only screen and (max-width: 812px){.css-69zjs9,[data-css-69zjs9]{padding-top:30px;padding-bottom:50px;}}.css-8a04gk,[data-css-8a04gk]{width:1140px;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;justify-content:space-between;padding-left:20px;padding-right:20px;-webkit-box-pack:justify;-webkit-justify-content:space-between;}@media only screen and (max-width: 812px){.css-8a04gk,[data-css-8a04gk]{flex-direction:column;justify-content:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-webkit-box-pack:center;-webkit-justify-content:center;}}.css-1m38k02,[data-css-1m38k02]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:400;font-size:13px;line-height:1.7;letter-spacing:normal;-webkit-font-smoothing:antialiased;color:#333;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;flex-direction:column;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;}@media only screen and (max-width: 812px){.css-1m38k02,[data-css-1m38k02]{text-align:center;}}.css-162qu2y,[data-css-162qu2y]{font-size:20px;font-weight:600;letter-spacing:0.4px;}.css-p797gu,[data-css-p797gu]{font-size:13px;line-height:2.07;letter-spacing:0.3px;text-decoration:none;color:#333;}.css-p797gu:hover,[data-css-p797gu]:hover{color:#068dfe;}@media only screen and (max-width: 768px){.css-p797gu,[data-css-p797gu]{font-size:14px;}}.css-1drwozb,[data-css-1drwozb]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;width:80%;justify-content:space-between;align-items:center;order:4;-webkit-box-pack:justify;-webkit-justify-content:space-between;-webkit-box-align:center;-webkit-align-items:center;-webkit-order:4;}@media only screen and (max-width: 480px){.css-1drwozb,[data-css-1drwozb]{margin-bottom:20px;}}.css-gbti5j,[data-css-gbti5j]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;flex-direction:column;align-items:center;position:relative;color:#707070;font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:400;font-size:13px;line-height:1.7;letter-spacing:normal;-webkit-font-smoothing:antialiased;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-webkit-box-align:center;-webkit-align-items:center;}.css-gbti5j>:first-child,[data-css-gbti5j]>:first-child{margin-bottom:5px;}.css-gbti5j>span,[data-css-gbti5j]>span{color:#333;line-height:1.22;letter-spacing:0.8px;font-weight:600;font-size:18px;}.css-1ahj942,[data-css-1ahj942]{border-left:1px solid #e1e1e1;width:1px;height:36px;}.css-1an0suy,[data-css-1an0suy]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;flex-direction:column;align-items:center;position:relative;color:#707070;font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:400;font-size:13px;line-height:1.7;letter-spacing:normal;-webkit-font-smoothing:antialiased;transition:color 0.6s ease-in-out;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-webkit-box-align:center;-webkit-align-items:center;-webkit-transition:color 0.6s ease-in-out;-moz-transition:color 0.6s ease-in-out;}.css-1an0suy>:first-child,[data-css-1an0suy]>:first-child{margin-bottom:5px;}.css-1an0suy>span,[data-css-1an0suy]>span{color:#333;line-height:1.22;letter-spacing:0.8px;font-weight:600;font-size:18px;}.css-1an0suy div,[data-css-1an0suy] div{position:absolute;top:-15px;right:0;left:0;text-align:center;font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:600;font-size:13px;line-height:1.7;letter-spacing:normal;-webkit-font-smoothing:antialiased;color:#45C57C;opacity:0;animation:none;-webkit-animation:none;}.css-14pk3xx,[data-css-14pk3xx]{height:32px;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;justify-content:center;align-items:center;border-radius:2px;border:1px solid #068dfe;font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-size:13px;font-weight:400;letter-spacing:0.8px;background-color:#068dfe;color:#fff;text-decoration:none;cursor:pointer;-webkit-font-smoothing:antialiased;padding-top:0;padding-bottom:0;padding-left:8px;padding-right:8px;width:98px;outline:none;flex-grow:0;flex-shrink:0;margin-right:10px;-webkit-box-pack:center;-webkit-justify-content:center;-webkit-box-align:center;-webkit-align-items:center;-webkit-flex-grow:0;-webkit-flex-shrink:0;}.css-14pk3xx:hover,[data-css-14pk3xx]:hover{background-color:rgba(6,141,254,0.8);border-color:rgba(6,141,254,0.79);color:#fff;}.css-1o4togz,[data-css-1o4togz]{height:32px;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;justify-content:center;align-items:center;border-radius:2px;border:1px solid #068dfe;font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-size:13px;font-weight:400;letter-spacing:0.8px;background-color:#068dfe;color:#fff;text-decoration:none;cursor:pointer;-webkit-font-smoothing:antialiased;padding-top:0;padding-bottom:0;padding-left:16px;padding-right:16px;width:auto;outline:none;flex-grow:0;flex-shrink:0;-webkit-box-pack:center;-webkit-justify-content:center;-webkit-box-align:center;-webkit-align-items:center;-webkit-flex-grow:0;-webkit-flex-shrink:0;}.css-1o4togz:hover,[data-css-1o4togz]:hover{background-color:rgba(6,141,254,0.8);border-color:rgba(6,141,254,0.79);color:#fff;}.css-n746ki,[data-css-n746ki]{margin-top:30px;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;justify-content:center;z-index:1;-webkit-box-pack:center;-webkit-justify-content:center;}.css-12alag6,[data-css-12alag6]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;align-items:center;-webkit-box-align:center;-webkit-align-items:center;}.css-1v4wqws,[data-css-1v4wqws]{display:block;flex-direction:none;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-webkit-flex-direction:none;}.css-7c9av6,[data-css-7c9av6]{margin:0;padding:0;}.css-r1wkvc,[data-css-r1wkvc]{width:100%;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;align-items:center;flex-direction:column;-webkit-box-align:center;-webkit-align-items:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;}.css-1vusbpb,[data-css-1vusbpb]{width:1140px;padding-top:10px;}.css-4gnhqq,[data-css-4gnhqq]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;justify-content:space-between;align-items:center;-webkit-box-pack:justify;-webkit-justify-content:space-between;-webkit-box-align:center;-webkit-align-items:center;}.css-1jka35,[data-css-1jka35]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:600;font-size:34px;line-height:1.2;letter-spacing:normal;-webkit-font-smoothing:antialiased;padding:0;margin:0;color:#333;margin-top:15px;margin-bottom:15px;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;align-items:center;flex-wrap:wrap;-webkit-box-align:center;-webkit-align-items:center;-webkit-box-lines:multiple;-webkit-flex-wrap:wrap;}.css-1jka35>span.vs,[data-css-1jka35]>span.vs{font-size:17px;color:#b2b2b2;font-weight:normal;margin-right:6px;margin-left:6px;}@media only screen and (max-width: 812px){.css-1jka35,[data-css-1jka35]{font-size:20px;}.css-1jka35>span.vs,[data-css-1jka35]>span.vs{font-size:14px;margin-right:9px;margin-left:9px;}}.css-26la4,[data-css-26la4]{width:100%;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;justify-content:center;border-bottom:2px solid #e1e1e1;position:-webkit-sticky; position: sticky;z-index:100;top:0;-webkit-box-pack:center;-webkit-justify-content:center;}.css-yawzxl,[data-css-yawzxl]{width:1140px;}.css-1aswmtz,[data-css-1aswmtz]{height:95px;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;position:-webkit-sticky; position: sticky;top:0;background-color:#fff;width:100%;z-index:100;}.css-qrny8b,[data-css-qrny8b]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;justify-content:space-between;width:100%;margin:0 auto;-webkit-box-pack:justify;-webkit-justify-content:space-between;}.css-1176rj6,[data-css-1176rj6]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;margin:15px 0 0 0;}.css-1176rj6 > a:last-of-type,[data-css-1176rj6] > a:last-of-type{margin-right:0;}.css-1njwzsr,[data-css-1njwzsr]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:400;font-size:13px;line-height:1.7;letter-spacing:normal;-webkit-font-smoothing:antialiased;color:#707070;text-decoration:none;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;align-items:center;flex-direction:column;margin-right:10px;margin-left:10px;margin-bottom:-2px;border-bottom:2px solid transparent;width:100px;-webkit-box-align:center;-webkit-align-items:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;}.css-1njwzsr > svg,[data-css-1njwzsr] > svg{height:34px;}.css-1njwzsr:hover,[data-css-1njwzsr]:hover{color:#068dfe;border-color:#068dfe;}.css-1njwzsr:hover svg path,[data-css-1njwzsr]:hover svg path{fill:#068dfe;stroke:#068dfe;}.css-1njwzsr:focus,[data-css-1njwzsr]:focus{color:#068dfe;border-color:#068dfe;}.css-1njwzsr:focus svg path,[data-css-1njwzsr]:focus svg path{fill:#068dfe;stroke:#068dfe;}.css-zkwjas,[data-css-zkwjas]{margin-top:4px;font-size:14px;}.css-zkwjas>span,[data-css-zkwjas]>span{margin-left:0;}.css-8sc56q,[data-css-8sc56q]{width:20px;height:20px;}.css-8sc56q path,[data-css-8sc56q] path{fill:#939393;}.css-1d2ae58,[data-css-1d2ae58]{font-weight:400;font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-size:12px;line-height:1.7;letter-spacing:normal;-webkit-font-smoothing:antialiased;border-radius:6px;height:18px;padding-left:5px;padding-right:5px;margin-left:6px;flex-grow:0;background:#FF7F17;color:#fff;-webkit-flex-grow:0;}.css-1xq3kt1,[data-css-1xq3kt1]{margin-top:-72px;position:-webkit-sticky; position: sticky;top:90px;width:100%;box-shadow:0 2px 4px 0 rgba(194, 194, 194, 0.5);background:#fff;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;justify-content:center;align-items:center;height:72px;transition:opacity 300ms ease;opacity:0;pointer-events:none;z-index:100;-webkit-box-pack:center;-webkit-justify-content:center;-webkit-box-align:center;-webkit-align-items:center;-webkit-transition:opacity 300ms ease;-moz-transition:opacity 300ms ease;}.css-1xq3kt1>div,[data-css-1xq3kt1]>div{width:1140px;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;}.css-1xq3kt1>div>div,[data-css-1xq3kt1]>div>div{width:860px;display:grid;grid-template-columns:286.6666666666667px 286.6666666666667px 286.6666666666667px;-ms-grid-template-columns:286.6666666666667px 286.6666666666667px 286.6666666666667px;}.css-3vlw85,[data-css-3vlw85]{position:relative;flex-direction:column;grid-column:auto;grid-row:auto;background:white;padding:30px 20px 30px 20px;border-right:1px solid #e1e1e1;border-bottom:1px solid #e1e1e1;top:0;z-index:inherit;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-ms-grid-column:auto;-ms-grid-row:auto;}@media only screen and (max-width: 812px){.css-3vlw85,[data-css-3vlw85]{padding:20px 10px 20px 10px;}}.css-1anvsjr,[data-css-1anvsjr]{background:white;border-radius:2px;width:auto;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;flex-direction:column;align-items:center;position:relative;height:100%;justify-content:flex-start;padding-top:0;padding-bottom:0;border:0;box-shadow:0;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-webkit-box-align:center;-webkit-align-items:center;-webkit-box-pack:start;-webkit-justify-content:flex-start;}.css-1anvsjr>button,[data-css-1anvsjr]>button{top:16.5px;right:14px;}@media only screen and (max-width: 812px){.css-1anvsjr>button,[data-css-1anvsjr]>button{right:0;}}.css-169quga,[data-css-169quga]{border-radius:2px;width:100%;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;position:relative;border:1px solid #e1e1e1;padding:6px;box-sizing:border-box;padding-right:36px;}@media only screen and (max-width: 812px){.css-169quga,[data-css-169quga]{border:0;}.css-169quga > div,[data-css-169quga] > div{display:none;}}.css-msbgqg,[data-css-msbgqg]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:600;font-size:13px;line-height:1.7;letter-spacing:normal;-webkit-font-smoothing:antialiased;color:#333;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;align-items:center;text-decoration:none;margin-bottom:0;flex-grow:0;order:0;flex-direction:row;-webkit-box-align:center;-webkit-align-items:center;-webkit-flex-grow:0;-webkit-order:0;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-webkit-flex-direction:row;}.css-avtieu,[data-css-avtieu]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;flex-direction:column;font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:600;font-size:16px;line-height:1.38;letter-spacing:normal;-webkit-font-smoothing:antialiased;color:#333;text-decoration:none;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;}.css-avtieu>span:nth-child(2),[data-css-avtieu]>span:nth-child(2){font-size:13px;color:#ababab;font-weight:400;}@media only screen and (max-width: 812px){.css-avtieu>span:nth-child(1),[data-css-avtieu]>span:nth-child(1){font-size:14px;}.css-avtieu>span:nth-child(2),[data-css-avtieu]>span:nth-child(2){font-size:13px;}}.css-omocl,[data-css-omocl]{margin-left:auto;}.css-pn8ojz,[data-css-pn8ojz]{padding:0;outline:none;border:0;width:20px;height:20px;border-radius:50%;background:#dbdbdb;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;justify-content:center;align-items:center;position:absolute;cursor:pointer;-webkit-box-pack:center;-webkit-justify-content:center;-webkit-box-align:center;-webkit-align-items:center;}.css-pn8ojz>svg,[data-css-pn8ojz]>svg{width:8px;height:8px;}.css-ii8qy4,[data-css-ii8qy4]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;flex-direction:column;width:1140px;height:100%;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;}.css-jaw8ve,[data-css-jaw8ve]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;position:relative;margin-bottom:50px;margin-top:25px;}.css-19hrebc,[data-css-19hrebc]{display:grid;width:860px;grid-template-columns:286.6666666666667px 286.6666666666667px 286.6666666666667px;flex-grow:1;-ms-grid-template-columns:286.6666666666667px 286.6666666666667px 286.6666666666667px;-webkit-flex-grow:1;}.css-5k0ecd,[data-css-5k0ecd]{position:relative;flex-direction:column;grid-column:span 3;grid-row:auto;background:white;padding:30px 20px 30px 20px;border-right:0;border-bottom:1px solid #e1e1e1;top:0;z-index:inherit;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-ms-grid-column:span 3;-ms-grid-row:auto;}@media only screen and (max-width: 812px){.css-5k0ecd,[data-css-5k0ecd]{padding:20px 10px 20px 10px;}}.css-86zjul,[data-css-86zjul]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:400;font-size:13px;line-height:1.7;letter-spacing:normal;-webkit-font-smoothing:antialiased;max-width:1170px;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;align-items:center;justify-content:space-between;cursor:pointer;padding:10px 20px;border:1px solid #e1e1e1;-webkit-box-align:center;-webkit-align-items:center;-webkit-box-pack:justify;-webkit-justify-content:space-between;}@media only screen and (max-width: 480px){.css-86zjul,[data-css-86zjul]{padding:10px;flex-wrap:wrap;margin:0;justify-content:center;border:0;-webkit-box-lines:multiple;-webkit-flex-wrap:wrap;-webkit-box-pack:center;-webkit-justify-content:center;}}.css-1di6wpo,[data-css-1di6wpo]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;align-items:center;-webkit-box-align:center;-webkit-align-items:center;}@media only screen and (max-width: 480px){.css-1di6wpo,[data-css-1di6wpo]{width:auto;}}.css-lr10t7,[data-css-lr10t7]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:600;font-size:15px;line-height:1.4545454545454546;letter-spacing:normal;-webkit-font-smoothing:antialiased;padding:0;margin:0;color:#333;}.css-4yzqpf,[data-css-4yzqpf]{color:#068dfe;display:block;font-size:12px;font-weight:normal;}.css-st9eg3,[data-css-st9eg3]{height:34px;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;justify-content:center;align-items:center;border-radius:2px;border:1px solid #068dfe;font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-size:13px;font-weight:400;letter-spacing:0.8px;background-color:#068dfe;color:#fff;text-decoration:none;cursor:pointer;-webkit-font-smoothing:antialiased;padding-top:0;padding-bottom:0;padding-left:16px;padding-right:16px;width:270px;outline:none;-webkit-box-pack:center;-webkit-justify-content:center;-webkit-box-align:center;-webkit-align-items:center;}.css-st9eg3:hover,[data-css-st9eg3]:hover{background-color:rgba(6,141,254,0.8);border-color:rgba(6,141,254,0.79);color:#fff;}@media only screen and (max-width: 480px){.css-st9eg3,[data-css-st9eg3]{margin-top:10px;}}.css-x7ngfe,[data-css-x7ngfe]{background:white;border-radius:2px;width:auto;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;flex-direction:column;align-items:center;position:relative;height:100%;justify-content:flex-end;padding-top:27px;padding-bottom:30px;border:1px solid #e1e1e1;box-shadow:0 1px 0 0 #e1e1e1;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-webkit-box-align:center;-webkit-align-items:center;-webkit-box-pack:end;-webkit-justify-content:flex-end;}.css-x7ngfe>button,[data-css-x7ngfe]>button{top:10px;right:10px;}@media only screen and (max-width: 812px){.css-x7ngfe>button,[data-css-x7ngfe]>button{right:0;}}.css-ihgrxl,[data-css-ihgrxl]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:600;font-size:13px;line-height:1.7;letter-spacing:normal;-webkit-font-smoothing:antialiased;color:#333;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;align-items:center;text-decoration:none;margin-bottom:24px;flex-grow:1;order:1;flex-direction:column;-webkit-box-align:center;-webkit-align-items:center;-webkit-flex-grow:1;-webkit-order:1;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;}.css-124gz8p,[data-css-124gz8p]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;flex-direction:column;align-items:center;order:2;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-webkit-box-align:center;-webkit-align-items:center;-webkit-order:2;}.css-1i4hfqi,[data-css-1i4hfqi]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;flex-direction:row;align-items:center;justify-content:space-around;flex-wrap:wrap;margin-top:15px;margin-bottom:32px;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-webkit-flex-direction:row;-webkit-box-align:center;-webkit-align-items:center;-webkit-box-pack:justify;-webkit-justify-content:space-around;-webkit-box-lines:multiple;-webkit-flex-wrap:wrap;}.css-1i4hfqi > button:first-of-type,[data-css-1i4hfqi] > button:first-of-type{margin-right:15px;}.css-2urik6,[data-css-2urik6]{border:0;border-bottom:1px solid #e1e1e1;height:1px;width:90%;margin-top:-10px;margin-bottom:17px;order:3;-webkit-order:3;}.css-1cuq2n9,[data-css-1cuq2n9]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:400;font-size:13px;line-height:1.7;letter-spacing:normal;-webkit-font-smoothing:antialiased;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;align-items:center;padding:19px;border:0;margin-top:0;flex-direction:row;-webkit-box-align:center;-webkit-align-items:center;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-webkit-flex-direction:row;}.css-1cl6o07,[data-css-1cl6o07]{width:125px;height:auto;margin-right:25px;}.css-172fe00,[data-css-172fe00]{font-size:15px;text-align:left;color:#000;font-weight:900;padding-top:0;max-width:425px;}@media only screen and (max-width: 812px){.css-172fe00,[data-css-172fe00]{max-width:280px;}}.css-1i2jin4,[data-css-1i2jin4]{height:auto;display:inline;justify-content:center;align-items:center;border-radius:2px;border:1px solid #fff;font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-size:15px;font-weight:900;letter-spacing:0;background-color:transparent;color:#068dfe;text-decoration:none;cursor:pointer;-webkit-font-smoothing:antialiased;padding-top:0;padding-bottom:0;padding-left:16px;padding-right:16px;width:-webkit-fit-content; width: -moz-fit-content; width: fit-content;outline:none;text-align:center;padding:0;margin:0;-webkit-box-pack:center;-webkit-justify-content:center;-webkit-box-align:center;-webkit-align-items:center;}.css-1i2jin4:hover,[data-css-1i2jin4]:hover{background-color:rgba(6,141,254,0.8);border-color:#fff;color:#068dfe;background:transparent;cursor:pointer;text-decoration:underline;}.css-1f94cd7,[data-css-1f94cd7]{height:32px;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;justify-content:center;align-items:center;border-radius:2px;border:1px solid #068dfe;font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-size:13px;font-weight:400;letter-spacing:0.8px;background-color:#068dfe;color:#fff;text-decoration:none;cursor:pointer;-webkit-font-smoothing:antialiased;padding-top:0;padding-bottom:0;padding-left:16px;padding-right:16px;width:auto;outline:none;margin:10px 0 5px;margin-left:auto;-webkit-box-pack:center;-webkit-justify-content:center;-webkit-box-align:center;-webkit-align-items:center;}.css-1f94cd7:hover,[data-css-1f94cd7]:hover{background-color:rgba(6,141,254,0.8);border-color:rgba(6,141,254,0.79);color:#fff;}@media only screen and (max-width: 480px){.css-1f94cd7,[data-css-1f94cd7]{width:100px;}}.css-f8hv9w,[data-css-f8hv9w]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:600;font-size:18px;line-height:1.7;letter-spacing:normal;-webkit-font-smoothing:antialiased;}@media only screen and (max-width: 812px){.css-f8hv9w,[data-css-f8hv9w]{font-size:15px;}}.css-uxqild,[data-css-uxqild]{position:relative;overflow-y:scroll;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;flex-grow:1;height:270px;max-height:auto;flex-direction:column;flex-wrap:nowrap;-webkit-flex-grow:1;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-webkit-box-lines:nowrap;-webkit-flex-wrap:nowrap;}.css-uxqild::-webkit-scrollbar,[data-css-uxqild]::-webkit-scrollbar{width:4px;}.css-uxqild::-webkit-scrollbar-thumb,[data-css-uxqild]::-webkit-scrollbar-thumb{background:#c2c2c2;border-radius:2.5px;}.css-uxqild > div,[data-css-uxqild] > div{flex-basis:unset;-webkit-flex-basis:unset;}@media only screen and (max-width: 480px){.css-uxqild > div,[data-css-uxqild] > div{flex-basis:unset;-webkit-flex-basis:unset;}}.css-6nrkpz,[data-css-6nrkpz]{list-style:none;}.css-1mlbi0l,[data-css-1mlbi0l]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;align-items:center;margin-bottom:15px;flex-shrink:0;cursor:default;-webkit-box-align:center;-webkit-align-items:center;-webkit-flex-shrink:0;}.css-1mlbi0l > div:first-of-type,[data-css-1mlbi0l] > div:first-of-type{width:40px;flex-shrink:0;-webkit-flex-shrink:0;}.css-1cda8k4,[data-css-1cda8k4]{display:inline-block;border-radius:2px;cursor:pointer;background-color:#fff;border:1px solid #c2c2c2;color:#4a4a4a;}.css-2an9kq,[data-css-2an9kq]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;flex-direction:column;justify-content:center;align-items:center;padding-top:5px;padding-left:8px;padding-right:8px;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-webkit-box-pack:center;-webkit-justify-content:center;-webkit-box-align:center;-webkit-align-items:center;}.css-5x5cr6,[data-css-5x5cr6]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-size:12px;font-weight:600;line-height:1.83;letter-spacing:0.5px;}.css-rsz8c,[data-css-rsz8c]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:400;font-size:13px;line-height:1.7;letter-spacing:normal;-webkit-font-smoothing:antialiased;margin-left:10px;text-decoration:none;color:#000;}.css-p8n7zj,[data-css-p8n7zj]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:400;font-size:13px;line-height:1.7;letter-spacing:normal;-webkit-font-smoothing:antialiased;max-width:1170px;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;align-items:center;justify-content:space-between;cursor:pointer;-webkit-box-align:center;-webkit-align-items:center;-webkit-box-pack:justify;-webkit-justify-content:space-between;}@media only screen and (max-width: 480px){.css-p8n7zj,[data-css-p8n7zj]{padding:10px;flex-wrap:wrap;width:100vw;margin:0;justify-content:center;border:0;-webkit-box-lines:multiple;-webkit-flex-wrap:wrap;-webkit-box-pack:center;-webkit-justify-content:center;}}.css-1uq0dwx,[data-css-1uq0dwx]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;}@media only screen and (max-width: 480px){.css-1uq0dwx,[data-css-1uq0dwx]{width:auto;}}.css-1p6gwer,[data-css-1p6gwer]{margin-right:40px;width:40px;height:40px;flex-shrink:0;-webkit-flex-shrink:0;}.css-acfjt6,[data-css-acfjt6]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;align-items:center;justify-content:center;height:100%;-webkit-box-align:center;-webkit-align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;}.css-acfjt6 > div > div,[data-css-acfjt6] > div > div{margin-left:45px;}@media only screen and (max-width: 480px){.css-acfjt6,[data-css-acfjt6]{padding:10px;}.css-acfjt6 > div > div,[data-css-acfjt6] > div > div{margin-left:25px;}}.css-w707sh,[data-css-w707sh]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;padding:20px;flex-direction:row;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-webkit-flex-direction:row;}.css-w707sh > div:first-of-type,[data-css-w707sh] > div:first-of-type{margin-left:0;}.css-14bxxd1,[data-css-14bxxd1]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;align-items:center;justify-content:center;height:100%;-webkit-box-align:center;-webkit-align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;}@media only screen and (max-width: 768px){.css-14bxxd1,[data-css-14bxxd1]{padding:10px;}}.css-1hlwa6q,[data-css-1hlwa6q]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;align-items:center;flex-direction:row;text-decoration:none;-webkit-box-align:center;-webkit-align-items:center;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-webkit-flex-direction:row;}@media only screen and (max-width: 768px){.css-1hlwa6q,[data-css-1hlwa6q]{flex-direction:column;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;}}.css-f9zb2m,[data-css-f9zb2m]{height:50px;width:50px;}@media only screen and (max-width: 768px){.css-f9zb2m,[data-css-f9zb2m]{height:32px;width:32px;}}.css-1wdjt5z,[data-css-1wdjt5z]{margin-left:15px;}.css-1wdjt5z > div > div,[data-css-1wdjt5z] > div > div{margin-right:20px;}@media only screen and (max-width: 768px){.css-1wdjt5z,[data-css-1wdjt5z]{margin-top:15px;}.css-1wdjt5z > div > div,[data-css-1wdjt5z] > div > div{margin-right:25px;}}.css-1ke07jm,[data-css-1ke07jm]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:400;font-size:13px;line-height:1.7;letter-spacing:normal;-webkit-font-smoothing:antialiased;max-width:1170px;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;align-items:center;justify-content:space-between;cursor:pointer;padding:0px;border:none;-webkit-box-align:center;-webkit-align-items:center;-webkit-box-pack:justify;-webkit-justify-content:space-between;}@media only screen and (max-width: 480px){.css-1ke07jm,[data-css-1ke07jm]{padding:10px;flex-wrap:wrap;margin:0;justify-content:center;border:0;-webkit-box-lines:multiple;-webkit-flex-wrap:wrap;-webkit-box-pack:center;-webkit-justify-content:center;}}.css-4pt7vy,[data-css-4pt7vy]{position:relative;overflow-y:hidden;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;flex-grow:1;height:270px;max-height:auto;flex-direction:column;flex-wrap:nowrap;-webkit-flex-grow:1;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-webkit-box-lines:nowrap;-webkit-flex-wrap:nowrap;}.css-4pt7vy::-webkit-scrollbar,[data-css-4pt7vy]::-webkit-scrollbar{width:4px;}.css-4pt7vy::-webkit-scrollbar-thumb,[data-css-4pt7vy]::-webkit-scrollbar-thumb{background:#c2c2c2;border-radius:2.5px;}.css-4pt7vy::after,[data-css-4pt7vy]::after{content:"";position:absolute;bottom:0;left:0;height:100px;width:100%;background:-webkit-linear-gradient(top, rgba(255,255,255,.3), rgba(255,255,255, 1)); background: -moz-linear-gradient(top, rgba(255,255,255,.3), rgba(255,255,255, 1)); background: linear-gradient(top, rgba(255,255,255,.3), rgba(255,255,255, 1));}.css-4pt7vy > div,[data-css-4pt7vy] > div{flex-basis:unset;-webkit-flex-basis:unset;}@media only screen and (max-width: 480px){.css-4pt7vy > div,[data-css-4pt7vy] > div{flex-basis:unset;-webkit-flex-basis:unset;}}.css-mta8ak,[data-css-mta8ak]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;align-items:center;margin-bottom:15px;flex-shrink:0;-webkit-box-align:center;-webkit-align-items:center;-webkit-flex-shrink:0;}.css-1pwtf47,[data-css-1pwtf47]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;flex-direction:row;align-items:center;text-decoration:none;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-webkit-flex-direction:row;-webkit-box-align:center;-webkit-align-items:center;}.css-13fg6qi,[data-css-13fg6qi]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;position:relative;justify-content:center;align-items:center;width:32px;min-width:32px;height:32px;min-height:32px;background-color:#fff;border-radius:3.1px;border:solid 0.8px #c2c2c2;-webkit-box-pack:center;-webkit-justify-content:center;-webkit-box-align:center;-webkit-align-items:center;}.css-13fg6qi:hover,[data-css-13fg6qi]:hover{background-color:#fff;}.css-4lwqz5,[data-css-4lwqz5]{border:0;border-radius:0;height:24px;width:24px;}.css-4d5oui,[data-css-4d5oui]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:400;font-size:13px;line-height:1.7;letter-spacing:normal;-webkit-font-smoothing:antialiased;color:#707070;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;flex-direction:column;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;}.css-4d5oui strong,[data-css-4d5oui] strong{color:#333;}@media only screen and (max-width: 480px){.css-4d5oui,[data-css-4d5oui]{padding:10px;}}.css-ptavxb,[data-css-ptavxb]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:600;font-size:18px;line-height:1.7;letter-spacing:normal;-webkit-font-smoothing:antialiased;color:#333;}.css-10pc7td,[data-css-10pc7td]{display:grid;grid-template-columns:150px auto;grid-row-gap:20px;margin-bottom:20px;margin-top:20px;-ms-grid-template-columns:150px auto;-ms-grid-row-gap:20px;}@media only screen and (max-width: 480px){.css-10pc7td,[data-css-10pc7td]{grid-template-columns:100px auto;-ms-grid-template-columns:100px auto;}}.css-1ukyolz,[data-css-1ukyolz]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;flex-direction:row;font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:400;font-size:13px;line-height:22px;letter-spacing:normal;-webkit-font-smoothing:antialiased;color:#707070;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-webkit-flex-direction:row;}.css-1uackhz,[data-css-1uackhz]{font-weight:600;}.css-1ofkegx,[data-css-1ofkegx]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:400;font-size:13px;line-height:22px;letter-spacing:normal;-webkit-font-smoothing:antialiased;color:#707070;padding-left:10px;}.css-1xexurq,[data-css-1xexurq]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:400;font-size:13px;line-height:1.7;letter-spacing:normal;-webkit-font-smoothing:antialiased;text-decoration:none;color:#068dfe;margin-top:10px;}.css-1cqgl9p,[data-css-1cqgl9p]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;}.css-p223ph,[data-css-p223ph]{width:260px;margin-left:20px;}.css-cn7d1w,[data-css-cn7d1w]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:400;font-size:13px;line-height:1.7;letter-spacing:normal;-webkit-font-smoothing:antialiased;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;align-items:center;padding:19px;border:1px solid #e9e9e9;margin-top:33px;flex-direction:column;-webkit-box-align:center;-webkit-align-items:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;}.css-1fj3l7d,[data-css-1fj3l7d]{width:152px;height:auto;margin-right:0;}.css-i272tr,[data-css-i272tr]{font-size:15px;text-align:center;color:#000;font-weight:900;padding-top:15px;max-width:auto;}@media only screen and (max-width: 812px){.css-i272tr,[data-css-i272tr]{max-width:280px;}}.css-56ijgy,[data-css-56ijgy]{height:auto;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;justify-content:center;align-items:center;border-radius:2px;border:1px solid #fff;font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-size:13px;font-weight:900;letter-spacing:0;background-color:transparent;color:#068dfe;text-decoration:none;cursor:pointer;-webkit-font-smoothing:antialiased;padding-top:0;padding-bottom:0;padding-left:16px;padding-right:16px;width:auto;outline:none;text-align:center;padding:0;margin:10px 0;-webkit-box-pack:center;-webkit-justify-content:center;-webkit-box-align:center;-webkit-align-items:center;}.css-56ijgy:hover,[data-css-56ijgy]:hover{background-color:rgba(6,141,254,0.8);border-color:#fff;color:#068dfe;background:transparent;cursor:pointer;text-decoration:underline;}.css-1l7t0dr,[data-css-1l7t0dr]{height:32px;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;justify-content:center;align-items:center;border-radius:2px;border:1px solid #068dfe;font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-size:13px;font-weight:400;letter-spacing:0.8px;background-color:#068dfe;color:#fff;text-decoration:none;cursor:pointer;-webkit-font-smoothing:antialiased;padding-top:0;padding-bottom:0;padding-left:16px;padding-right:16px;width:100%;outline:none;margin:10px 0 5px;margin-left:0;-webkit-box-pack:center;-webkit-justify-content:center;-webkit-box-align:center;-webkit-align-items:center;}.css-1l7t0dr:hover,[data-css-1l7t0dr]:hover{background-color:rgba(6,141,254,0.8);border-color:rgba(6,141,254,0.79);color:#fff;}@media only screen and (max-width: 480px){.css-1l7t0dr,[data-css-1l7t0dr]{width:100px;}}.css-i5u9v5,[data-css-i5u9v5]{margin:20px 0;display:grid;gap:15px;grid-template:repeat(1, 1fr) / repeat(2, 1fr);-ms-grid-template:repeat(1, 1fr) / repeat(2, 1fr);}@media only screen and (max-width: 480px){.css-i5u9v5,[data-css-i5u9v5]{grid-template:repeat(1, 1fr) / repeat(1, 1fr);gap:15px 0;padding:0 15px;-ms-grid-template:repeat(1, 1fr) / repeat(1, 1fr);}}.css-1ewdw7x,[data-css-1ewdw7x]{background:#fff;position:relative;border:1px solid #e1e1e1;border-radius:4px;margin:10px 0 3px 0;padding:15px 20px;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;flex-direction:column;justify-content:flex-end;font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-webkit-box-pack:end;-webkit-justify-content:flex-end;}.css-ih8ay1,[data-css-ih8ay1]{order:1;flex-grow:1;-webkit-order:1;-webkit-flex-grow:1;}.css-17niv7d,[data-css-17niv7d]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:600;font-size:15px;line-height:1.7;letter-spacing:normal;-webkit-font-smoothing:antialiased;color:#333;margin-bottom:8px;margin:5px 0 0 0;}.css-17niv7d a,[data-css-17niv7d] a, .css-17niv7d a:hover, [data-css-17niv7d] a:hover, .css-17niv7d a:visited, [data-css-17niv7d] a:visited{color:#333;text-decoration:none;}@media only screen and (max-width: 480px){.css-17niv7d,[data-css-17niv7d]{font-size:18px;}}.css-6mpj06,[data-css-6mpj06]{color:#707070;}.css-6mpj06:hover,[data-css-6mpj06]:hover{color:#707070;text-decoration:underline;}.css-nio1yx,[data-css-nio1yx]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;align-items:center;margin:5px 0;-webkit-box-align:center;-webkit-align-items:center;}.css-nio1yx>svg,[data-css-nio1yx]>svg{margin-right:3px;}@media only screen and (max-width: 480px){.css-nio1yx,[data-css-nio1yx]{font-size:13px;}}.css-ak2nbp,[data-css-ak2nbp]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:400;font-size:13px;line-height:1.7;letter-spacing:normal;-webkit-font-smoothing:antialiased;color:#707070;}.css-ak2nbp a,[data-css-ak2nbp] a, .css-ak2nbp a:hover, [data-css-ak2nbp] a:hover, .css-ak2nbp a:visited, [data-css-ak2nbp] a:visited{color:#707070;text-decoration:none;}.css-9yycaw,[data-css-9yycaw]{order:2;margin:10px 0;-webkit-order:2;}.css-leu1cr,[data-css-leu1cr]{height:32px;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;justify-content:center;align-items:center;border-radius:2px;border:1px solid #068dfe;font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-size:13px;font-weight:400;letter-spacing:0.8px;background-color:#068dfe;color:#fff;text-decoration:none;cursor:pointer;-webkit-font-smoothing:antialiased;padding-top:0;padding-bottom:0;padding-left:16px;padding-right:16px;-webkit-box-pack:center;-webkit-justify-content:center;-webkit-box-align:center;-webkit-align-items:center;}.css-leu1cr:hover,[data-css-leu1cr]:hover{background-color:rgba(6,141,254,0.8);border-color:rgba(6,141,254,0.79);color:#fff;}.css-156fhm0,[data-css-156fhm0]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;margin:15px 0 0 0;align-items:center;justify-content:space-between;-webkit-box-align:center;-webkit-align-items:center;-webkit-box-pack:justify;-webkit-justify-content:space-between;}.css-10hy8cb,[data-css-10hy8cb]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;align-items:center;margin-right:4px;-webkit-box-align:center;-webkit-align-items:center;}.css-10hy8cb a,[data-css-10hy8cb] a{margin-right:8px;}.css-pvufaf,[data-css-pvufaf]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:400;font-size:13px;line-height:1.7;letter-spacing:normal;-webkit-font-smoothing:antialiased;color:#068dfe;text-decoration:none;cursor:pointer;}.css-f7loz8,[data-css-f7loz8]{display:grid;grid-template-columns:repeat(auto-fill, minmax(350px, auto));row-gap:20px;column-gap:20px;margin-top:20px;-ms-grid-template-columns:repeat(auto-fill, minmax(350px, auto));-webkit-column-gap:20px;-moz-column-gap:20px;}@media only screen and (max-width: 768px){.css-f7loz8,[data-css-f7loz8]{grid-template-columns:minmax(250px, auto);justify-items:center;-ms-grid-template-columns:minmax(250px, auto);}}.css-fa6ece,[data-css-fa6ece]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;align-items:center;margin:0;position:inherit;-webkit-box-align:center;-webkit-align-items:center;}.css-fa6ece h3,[data-css-fa6ece] h3{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:600;font-size:18px;line-height:18px;letter-spacing:normal;-webkit-font-smoothing:antialiased;color:#333;}.css-fa6ece>div,[data-css-fa6ece]>div{margin-left:12px;}.css-vbfwyr,[data-css-vbfwyr]{display:grid;margin-bottom:26px;grid-template-columns:1fr 1fr;grid-column-gap:20px;grid-row-gap:20px;margin-top:21px;-ms-grid-template-columns:1fr 1fr;-ms-grid-column-gap:20px;-ms-grid-row-gap:20px;}@media only screen and (max-width: 480px){.css-vbfwyr,[data-css-vbfwyr]{grid-template-columns:1fr;-ms-grid-template-columns:1fr;}}.css-1gtwocl,[data-css-1gtwocl]{position:relative;box-sizing:border-box;padding:24px;border:1px solid #e1e1e1;border-radius:4px;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;flex-direction:column;background:#fff;padding-top:24px;height:272px;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;}@media only screen and (max-width: 1199px){.css-1gtwocl,[data-css-1gtwocl]{height:288px;}}.css-1kcdhc3,[data-css-1kcdhc3]{max-height:500px;flex:1;overflow-y:hidden;-webkit-flex:1;}@media only screen and (max-width: 1199px){.css-1kcdhc3,[data-css-1kcdhc3]{max-height:280px;}}.css-cuzej8,[data-css-cuzej8]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:600;font-size:15px;line-height:1.7;letter-spacing:normal;-webkit-font-smoothing:antialiased;color:#333;margin-bottom:8px;}.css-cuzej8 a,[data-css-cuzej8] a, .css-cuzej8 a:hover, [data-css-cuzej8] a:hover, .css-cuzej8 a:visited, [data-css-cuzej8] a:visited{color:#333;text-decoration:none;}.css-12h9n7t,[data-css-12h9n7t]{font-size:19px;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;align-items:center;-webkit-box-align:center;-webkit-align-items:center;}.css-12h9n7t a,[data-css-12h9n7t] a{min-height:64px;}.css-m2gwm,[data-css-m2gwm]{font-size:11px;font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;letter-spacing:0.3px;color:#a1a1a1;}.css-14kdfdp,[data-css-14kdfdp]{margin:10px 0 10px 0;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;align-items:center;font-size:11px;font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;letter-spacing:0.3px;-webkit-box-align:center;-webkit-align-items:center;}.css-14kdfdp p,[data-css-14kdfdp] p{margin:0;font-weight:600;}.css-lscypq,[data-css-lscypq]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;padding-top:16px;align-items:center;justify-content:space-between;border-top:1px solid #e1e1e1;-webkit-box-align:center;-webkit-align-items:center;-webkit-box-pack:justify;-webkit-justify-content:space-between;}.css-maw68b,[data-css-maw68b]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;justify-content:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-webkit-box-align:center;-webkit-align-items:center;}.css-maw68b .views,[data-css-maw68b] .views,.css-maw68b .favourites,[data-css-maw68b] .favourites{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;justify-content:center;align-items:center;margin-right:16px;font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:400;font-size:13px;line-height:1.7;letter-spacing:normal;-webkit-font-smoothing:antialiased;color:#707070;-webkit-box-pack:center;-webkit-justify-content:center;-webkit-box-align:center;-webkit-align-items:center;}.css-maw68b .views svg,[data-css-maw68b] .views svg,.css-maw68b .favourites svg,[data-css-maw68b] .favourites svg{margin-right:6px;}@media only screen and (max-width: 480px){.css-maw68b .views,[data-css-maw68b] .views,.css-maw68b .favourites,[data-css-maw68b] .favourites{margin-right:6px;}}.css-1i8b05s,[data-css-1i8b05s]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;justify-content:center;margin-top:20px;-webkit-box-pack:center;-webkit-justify-content:center;}.css-wdkc2c,[data-css-wdkc2c]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:400;font-size:13px;line-height:1.7;letter-spacing:normal;-webkit-font-smoothing:antialiased;}.css-z9ms26,[data-css-z9ms26]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:600;font-size:14px;line-height:1.7;letter-spacing:normal;-webkit-font-smoothing:antialiased;color:#2d2d2d;margin-right:7px;}.css-6uh2e7,[data-css-6uh2e7]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:400;font-size:14px;line-height:1.7;letter-spacing:normal;-webkit-font-smoothing:antialiased;color:#939393;margin-right:7px;}.css-t68yd0,[data-css-t68yd0]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;position:relative;justify-content:center;align-items:center;width:22px;min-width:22px;height:22px;min-height:22px;background-color:#fff;border-radius:3.1px;border:0;-webkit-box-pack:center;-webkit-justify-content:center;-webkit-box-align:center;-webkit-align-items:center;}.css-t68yd0:hover,[data-css-t68yd0]:hover{background-color:#fff;}.css-1rz3855,[data-css-1rz3855]{border:solid 1px #c2c2c2;border-radius:3.1px;height:22px;width:22px;}.css-i6njnm,[data-css-i6njnm]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:400;font-size:13px;line-height:1.7;letter-spacing:normal;-webkit-font-smoothing:antialiased;margin-left:7px;color:#000;}.css-1rla8dl,[data-css-1rla8dl]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:600;font-size:14px;line-height:1.7;letter-spacing:0.23px;-webkit-font-smoothing:antialiased;color:#333;margin-left:14px;margin-bottom:10px;}.css-1rla8dl > span,[data-css-1rla8dl] > span{font-weight:400;}.css-1cm2u5n,[data-css-1cm2u5n]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;flex-direction:column;align-items:center;margin-left:7px;margin-right:14px;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-webkit-box-align:center;-webkit-align-items:center;}@media only screen and (max-width: 480px){.css-1cm2u5n,[data-css-1cm2u5n]{margin-left:0;margin-right:5px;}}.css-lhxxg6,[data-css-lhxxg6]{width:3px;height:38px;background-color:#e1e1e1;}.css-jyena0,[data-css-jyena0]{height:11px;width:11px;background-color:#c2c2c2;border:2px solid #fff;box-sizing:content-box;border-radius:50%;}.css-s6ccv3,[data-css-s6ccv3]{width:3px;background-color:#e1e1e1;flex-grow:1;-webkit-flex-grow:1;}.css-1olkybm,[data-css-1olkybm]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;justify-content:center;align-items:center;width:100%;height:100%;-webkit-box-pack:center;-webkit-justify-content:center;-webkit-box-align:center;-webkit-align-items:center;}.css-138fyst,[data-css-138fyst]{height:34px;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;justify-content:center;align-items:center;border-radius:2px;border:1px solid #068dfe;font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-size:13px;font-weight:400;letter-spacing:0.8px;background-color:#068dfe;color:#fff;text-decoration:none;cursor:pointer;-webkit-font-smoothing:antialiased;padding-top:0;padding-bottom:0;padding-left:16px;padding-right:16px;width:120px;outline:none;-webkit-box-pack:center;-webkit-justify-content:center;-webkit-box-align:center;-webkit-align-items:center;}.css-138fyst:hover,[data-css-138fyst]:hover{background-color:rgba(6,141,254,0.8);border-color:rgba(6,141,254,0.79);color:#fff;}.css-1xjq47k,[data-css-1xjq47k]{cursor:pointer;display:-webkit-inline-box; display: -moz-inline-box; display: -ms-inline-flexbox; display: -webkit-inline-flex; display: inline-flex;align-items:center;flex-direction:column;-webkit-box-align:center;-webkit-align-items:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;}.css-1enuxn2,[data-css-1enuxn2]{border-radius:50%;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;align-items:center;justify-content:center;cursor:pointer;height:62px;width:62px;background-color:#068dfe;-webkit-box-align:center;-webkit-align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;}.css-1v2ezdc,[data-css-1v2ezdc]{height:29px;width:29px;}.css-n6mbbq,[data-css-n6mbbq]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:600;font-size:12px;line-height:1.7;letter-spacing:normal;-webkit-font-smoothing:antialiased;color:#068dfe;margin-top:10px;}.css-oa3yz4 > div:last-of-type,[data-css-oa3yz4] > div:last-of-type{border-bottom:0;}.css-1g9kten,[data-css-1g9kten]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:600;font-size:18px;line-height:1.7;letter-spacing:normal;-webkit-font-smoothing:antialiased;color:#333;}@media only screen and (max-width: 480px){.css-1g9kten,[data-css-1g9kten]{padding:10px;border-bottom:none;}}@media only screen and (max-width: 480px){.css-yzfa9h,[data-css-yzfa9h]{padding:0 10px;}}.css-uw1ldh,[data-css-uw1ldh]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:400;font-size:13px;line-height:1.7;letter-spacing:0.2px;-webkit-font-smoothing:antialiased;border-bottom:1px solid;border-color:#e1e1e1;padding:10px 0 20px 0;width:100%;}.css-xkasvz,[data-css-xkasvz]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;padding:20px 0;width:100%;}.css-atv6j6,[data-css-atv6j6]{margin-top:5px;}.css-1m8tyev,[data-css-1m8tyev]{position:relative;}.css-1m8tyev a,[data-css-1m8tyev] a{display:inline-block;}.css-1m8tyev img,[data-css-1m8tyev] img{width:31px;height:31px;border-radius:50%;}.css-1m8tyev> svg,[data-css-1m8tyev]> svg{width:31px;height:31px;}.css-1vf0ygt,[data-css-1vf0ygt]{margin-left:15px;width:100%;}.css-1vf0ygt a,[data-css-1vf0ygt] a{color:#333;}.css-1vf0ygt a:hover,[data-css-1vf0ygt] a:hover{color:#068dfe;}.css-utnqcw,[data-css-utnqcw]{font-weight:bold;font-size:14px;width:100%;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;justify-content:space-between;-webkit-box-pack:justify;-webkit-justify-content:space-between;}.css-ds0hbm,[data-css-ds0hbm]{color:#4a4a4a;}.css-dg4ww9,[data-css-dg4ww9]{width:100%;margin-top:0;margin-bottom:18px;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;align-items:center;font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:400;font-size:13px;line-height:1.7;letter-spacing:normal;-webkit-font-smoothing:antialiased;flex-wrap:wrap;-webkit-box-align:center;-webkit-align-items:center;-webkit-box-lines:multiple;-webkit-flex-wrap:wrap;}.css-dg4ww9 > svg:first-of-type,[data-css-dg4ww9] > svg:first-of-type{margin-right:7px;}.css-dg4ww9 > a,[data-css-dg4ww9] > a{text-decoration:none;margin-right:7px;}.css-dg4ww9 > a:last-of-type,[data-css-dg4ww9] > a:last-of-type{text-decoration:none;margin-right:0;}.css-dg4ww9 > *,[data-css-dg4ww9] > *{margin-bottom:13px;}.css-dg4ww9 > a > span:last-of-type,[data-css-dg4ww9] > a > span:last-of-type{font-size:14px;}.css-1dp4k20,[data-css-1dp4k20]{height:75px;position:relative;overflow:hidden;}.css-1dp4k20:after,[data-css-1dp4k20]:after{content:" ";position:absolute;bottom:0;left:0;width:100%;height:30px;background:-webkit-linear-gradient(to bottom, rgba(255,255,255,0), #fff 80%); background: -moz-linear-gradient(to bottom, rgba(255,255,255,0), #fff 80%); background: linear-gradient(to bottom, rgba(255,255,255,0), #fff 80%);}.css-ztg526 .topic,[data-css-ztg526] .topic,.css-ztg526 .tool,[data-css-ztg526] .tool{font-weight:normal;background:rgba(6,141,254,0.15);padding:0px 2px;}.css-ztg526 a,[data-css-ztg526] a,.css-ztg526 a:visited,[data-css-ztg526] a:visited{color:#068dfe;text-decoration:underline;cursor:pointer;}.css-ztg526 a:hover,[data-css-ztg526] a:hover,.css-ztg526 a:visited:hover,[data-css-ztg526] a:visited:hover{text-decoration:underline;}.css-ztg526 pre,[data-css-ztg526] pre{white-space:pre-wrap;word-wrap:break-word;background:#fafafa;color:#333;margin:15px 0;font-family:monospace;padding:10px;border-radius:0;}.css-ztg526 code,[data-css-ztg526] code{border-radius:0;background:#fafafa;color:#333;}.css-1srb7t4,[data-css-1srb7t4]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:400;font-size:13px;line-height:1.6666666666666667;letter-spacing:normal;-webkit-font-smoothing:antialiased;width:100%;text-align:center;text-decoration:underline;cursor:pointer;color:#333;}.css-1srb7t4:hover,[data-css-1srb7t4]:hover{color:#333;text-decoration:none;}.css-1pz1q9u,[data-css-1pz1q9u]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;flex-direction:column;background-color:#fff;border-top:1px solid #e1e1e1;padding:10px;padding-top:26px;padding-bottom:30px;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;}.css-1pz1q9u > div > article ,[data-css-1pz1q9u] > div > article {width:100%;flex-grow:1;margin-bottom:20px;margin-right:0;border:1px solid #e1e1e1;border-bottom:0;box-shadow:0 2px 6px 0 rgba(227, 227, 227, 0.5);-webkit-flex-grow:1;}.css-1pz1q9u > div:last-of-type > article,[data-css-1pz1q9u] > div:last-of-type > article{margin-bottom:0;}@media only screen and (max-width: 480px){.css-1pz1q9u,[data-css-1pz1q9u]{padding:8px;}.css-1pz1q9u > div,[data-css-1pz1q9u] > div{width:100%;}}.css-gyrv08,[data-css-gyrv08]{display:none;}.css-vbbua8,[data-css-vbbua8]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;justify-content:flex-end;align-items:center;min-width:165px;color:#707070;-webkit-box-pack:end;-webkit-justify-content:flex-end;-webkit-box-align:center;-webkit-align-items:center;}@media only screen and (max-width: 480px){.css-vbbua8,[data-css-vbbua8]{margin-top:10px;justify-content:flex-start;-webkit-box-pack:start;-webkit-justify-content:flex-start;}}.css-1r3kfuo,[data-css-1r3kfuo]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:600;font-size:13px;line-height:1.7;letter-spacing:normal;-webkit-font-smoothing:antialiased;margin-left:5px;margin-right:3px;}.css-1iv3e1o,[data-css-1iv3e1o]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:400;font-size:13px;line-height:1.7;letter-spacing:normal;-webkit-font-smoothing:antialiased;color:#707070;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;flex-direction:column;margin-left:0;margin-right:0;width:100%;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;}.css-1iv3e1o strong,[data-css-1iv3e1o] strong{color:#333;}.css-1iv3e1o:last-child > div,[data-css-1iv3e1o]:last-child > div{margin:0 auto;max-width:225px;}@media only screen and (max-width: 480px){.css-1iv3e1o,[data-css-1iv3e1o]{padding:10px;box-sizing:border-box;}}@media only screen and (max-width: 812px){.css-1iv3e1o > div,[data-css-1iv3e1o] > div{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;justify-content:center;-webkit-box-pack:center;-webkit-justify-content:center;}}@media only screen and (max-width: 768px){.css-1iv3e1o:last-child > div,[data-css-1iv3e1o]:last-child > div{margin:0 auto;max-width:225px;}}.css-1ob9em9,[data-css-1ob9em9]{max-width:225px;margin:0 auto;width:100%;}.css-1ob9em9 > button,[data-css-1ob9em9] > button{width:100%;margin:auto;padding-left:16px;padding-right:16px;}.css-1mpii3w,[data-css-1mpii3w]{height:auto;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;justify-content:center;align-items:center;border-radius:2px;border:1px solid #f87a46;font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-size:13px;font-weight:400;letter-spacing:0.8px;background-color:#f87a46;color:#fff;text-decoration:none;cursor:pointer;-webkit-font-smoothing:antialiased;padding-top:0;padding-bottom:0;padding-left:16px;padding-right:16px;width:auto;outline:none;line-height:20px;min-height:32px;-webkit-box-pack:center;-webkit-justify-content:center;-webkit-box-align:center;-webkit-align-items:center;}.css-1mpii3w:hover,[data-css-1mpii3w]:hover{background-color:rgba(248,122,70,0.8);border-color:rgba(248,122,70,0.8);color:#fff;}.css-z3du7b,[data-css-z3du7b]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:400;font-size:13px;line-height:1.7;letter-spacing:normal;-webkit-font-smoothing:antialiased;color:#707070;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;}.css-z3du7b strong,[data-css-z3du7b] strong{color:#333;}@media only screen and (max-width: 480px){.css-z3du7b,[data-css-z3du7b]{padding:10px;}}@media only screen and (max-width: 992px){.css-z3du7b,[data-css-z3du7b]{flex-direction:column;align-items:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-webkit-box-align:center;-webkit-align-items:center;}}.css-1s3pndt,[data-css-1s3pndt]{padding-right:10px;}.css-1j2w1cg,[data-css-1j2w1cg]{cursor:pointer;text-decoration:none;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;align-items:center;margin-right:0;-webkit-box-align:center;-webkit-align-items:center;}.css-1j2w1cg > div:last-of-type,[data-css-1j2w1cg] > div:last-of-type{margin-right:0;}.css-1b2ktnx,[data-css-1b2ktnx]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:600;font-size:14px;line-height:1.7;letter-spacing:normal;-webkit-font-smoothing:antialiased;color:#2d2d2d;margin-right:7px;margin-left:7px;}.css-103289b,[data-css-103289b]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:400;font-size:14px;line-height:1.7;letter-spacing:normal;-webkit-font-smoothing:antialiased;color:#939393;margin-right:3px;margin-left:0;}.css-lnzci0,[data-css-lnzci0]{width:22px;height:22px;border-radius:3.1px;border:1px solid #c2c2c2;}.css-odgfgk,[data-css-odgfgk]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:400;font-size:14px;line-height:1.7;letter-spacing:normal;-webkit-font-smoothing:antialiased;color:#939393;margin-right:0;margin-left:3px;}.css-13nf4of,[data-css-13nf4of]{margin:15px 0;border-top:solid 1px #e1e1e1;border-bottom:solid 1px #e1e1e1;padding:15px 0;}.css-13nf4of a,[data-css-13nf4of] a{color:#333;text-decoration:underline;}.css-xd3exe,[data-css-xd3exe]{margin-right:5px;}.css-1luzdj7,[data-css-1luzdj7]{border:solid 1px #e5e5e5;border-radius:4px;width:38px;height:38px;margin-right:11px;margin-bottom:0;background-image:url(https://img.stackshare.io/service/1276/og-image-8b3e4f7d.png);background-repeat:none;background-size:contain;}.css-1i9dr9t,[data-css-1i9dr9t]{border:solid 1px #e5e5e5;border-radius:4px;width:84px;height:84px;margin-right:0;margin-bottom:5px;background-image:url(https://img.stackshare.io/service/1276/og-image-8b3e4f7d.png);background-repeat:none;background-size:contain;}.css-1048up1,[data-css-1048up1]{border:solid 1px #e5e5e5;border-radius:4px;width:38px;height:38px;margin-right:11px;margin-bottom:0;background-image:url(https://img.stackshare.io/service/663/ElOjna20.png);background-repeat:none;background-size:contain;}.css-wu8y54,[data-css-wu8y54]{border:solid 1px #e5e5e5;border-radius:4px;width:84px;height:84px;margin-right:0;margin-bottom:5px;background-image:url(https://img.stackshare.io/service/663/ElOjna20.png);background-repeat:none;background-size:contain;}</style> <div id="Stackup-react-component-f8f92b7a-a991-49c6-81de-c37a73166cd9" data-ssr="true" ><div class="css-r1wkvc"><div class="css-1vusbpb"><div class="css-4gnhqq"><div data-testid="breadcrumbs" class="css-1ag7ge9"><a href="/categories" class="css-ld8qhm">Home</a><div class="css-11b98zt"></div><a href="/devops" class="css-ld8qhm">DevOps</a><div class="css-11b98zt"></div><a href="/build-test-deploy" class="css-ld8qhm">Build, Test, Deploy</a><div class="css-11b98zt"></div><a href="/server-configuration-and-automation" class="css-ld8qhm">Server Configuration and Automation</a></div><div class="css-vbbua8"><svg xmlns="http://www.w3.org/2000/svg" width="11" height="11" viewBox="0 0 11 11"><g fill="#0997FE"><path d="M5.453 0A5.459 5.459 0 0 0 0 5.453a5.459 5.459 0 0 0 5.453 5.453 5.459 5.459 0 0 0 5.453-5.453A5.459 5.459 0 0 0 5.453 0zm0 9.745A4.298 4.298 0 0 1 1.16 5.453 4.298 4.298 0 0 1 5.453 1.16a4.298 4.298 0 0 1 4.293 4.293 4.298 4.298 0 0 1-4.293 4.292z"></path><path d="M8.295 5.284h-2.45V2.338a.449.449 0 0 0-.899 0v3.395c0 .248.201.45.45.45h2.899a.449.449 0 0 0 0-.899z"></path></g></svg><div data-testid="updatedAt" class="css-1r3kfuo">UPDATED</div><div data-testid="updatedAtDate" class="css-wdkc2c">Dec 6, 2022</div></div></div><h1 class="css-1jka35"><span data-testid="stackupTitle">Ansible</span><span class="vs">聽vs聽</span><span data-testid="stackupTitle">Terraform</span></h1></div><div class="css-26la4"><div class="css-yawzxl"><div data-testid="navigationBar" class="css-1aswmtz"><div class="css-qrny8b"><nav class="css-1176rj6"><a href="#decisions" class="css-1njwzsr"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 34 34"><g fill="#999" stroke="#999" stroke-width=".2"><path fill-rule="evenodd" d="M21.47 23.475V22.34h-2.46a.537.537 0 0 0-.528.531v2.124l-3.14.008v-5.641a.537.537 0 0 0-.527-.533h-3.287l.03 1.163L8.84 17.22l2.689-2.78v1.167h2.88l.543.014c1.743.068 3.207 1.39 3.482 3.142l.079.356h2.957l-.03-1.197 2.718 2.776-2.688 2.778zm-7.463-11.307l2.765-3.313.075-.004 2.693 3.318h-.585c-.602 0-.602.527-.602.78v3.49c-.773-1.02-1.793-1.587-3.06-1.688v-1.865c0-.205.002-.4-.159-.56-.156-.157-.357-.157-.443-.157h-.684zm10.754 7.942l-2.72-2.78a.834.834 0 0 0-.908-.18.832.832 0 0 0-.506.77v.355h-1.43c-.007-.028-.02-.054-.026-.083a.43.43 0 0 0 .025-.144v-5.035h.685c.45 0 .617-.258.67-.37.051-.11.14-.407-.148-.75l-2.905-3.58a.907.907 0 0 0-1.374.001l-2.983 3.575c-.29.35-.2.645-.148.756.052.11.222.368.67.368h.787v1.75h-2.08v-.323a.83.83 0 0 0-.506-.77.828.828 0 0 0-.908.182l-2.72 2.778a.847.847 0 0 0 .001 1.176l2.716 2.772a.82.82 0 0 0 .91.189.836.836 0 0 0 .509-.772v-.324H14.5v5.331c0 .461.37.836.827.836h3.17a.832.832 0 0 0 .827-.836v-1.82h1.302v.293c0 .336.197.638.503.771a.833.833 0 0 0 .912-.181l2.719-2.778a.844.844 0 0 0 0-1.177z"></path></g></svg><div class="css-zkwjas">Decisions<!-- --> </div></a><a href="#pros" class="css-1njwzsr"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 30 30"><path fill="#A1A1A1" stroke="#A1A1A1" stroke-width=".2" d="M23.42 15.403c.855-.864.59-2.612-.892-2.612l-3.903.002c.148-.837.363-2.226.354-2.357-.082-1.242-.863-2.754-.896-2.815-.143-.27-.862-.634-1.586-.478-.935.203-1.03.808-1.027.975 0 0 .04 1.655.044 2.097-.447.996-1.99 3.613-2.457 3.815a.706.706 0 0 0-.37-.105H7.755A.76.76 0 0 0 7 14.69v6.908a.72.72 0 0 0 .71.665h4.43a.718.718 0 0 0 .711-.722v-.23s.165-.012.24.037c.285.183.636.414 1.095.414h6.61c2.47 0 2.205-2.224 1.98-2.527.417-.46.675-1.273.323-1.915.27-.29.746-1.09.32-1.917zM11.986 21.54H7.71v-6.894h4.278v6.894zm10.28-6.196l-.041.17c1.138.329.532 1.659-.284 1.745l-.04.17c1.091.282.57 1.652-.285 1.745l-.04.17c.891.149.675 1.691-.675 1.691l-6.722.003c-.475 0-.907-.549-1.257-.549h-.304v-5.306c.38-.239.846-.549 1.106-.772.49-.424 2.497-3.71 2.497-4.122 0-.412-.045-2.191-.045-2.191s.394-.514 1.272-.14c0 0 .74 1.406.815 2.526 0 0-.333 2.307-.512 3.03h4.66c1.146.002.927 1.659-.146 1.83z"></path></svg><div class="css-zkwjas">Pros &amp; Cons<!-- --> </div></a><a href="#stats" class="css-1njwzsr"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 30 30"><g fill="none" fill-rule="evenodd" stroke="#A1A1A1"><path fill="#A1A1A1" fill-rule="nonzero" stroke-width=".3" d="M20.876 7.374a.352.352 0 0 0-.105-.27.361.361 0 0 0-.273-.103L20.481 7h-2.177c-.2 0-.36.16-.36.355 0 .196.16.356.36.356h1.344l-3.558 3.512-1.341-1.325a.362.362 0 0 0-.51 0L7.77 16.285a.352.352 0 0 0 0 .502.361.361 0 0 0 .51 0l6.214-6.135 1.342 1.324c.14.139.368.139.509 0l3.812-3.763v1.201c0 .196.161.355.36.355.199 0 .36-.159.36-.355V7.391l-.001-.017z"></path><path d="M21.952 22.761v-8a1 1 0 0 0-1-1h-1.214a1 1 0 0 0-1 1v8m-2.143 0v-4.357a1 1 0 0 0-1-1h-1.214a1 1 0 0 0-1 1v4.357m-2.143 0v-2.214a1 1 0 0 0-1-1H9.024a1 1 0 0 0-1 1v2.214"></path></g></svg><div class="css-zkwjas">Stats<!-- --> </div></a><a href="#description" class="css-1njwzsr"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 30 30"><g fill="#A1A1A1" stroke="#A1A1A1" stroke-width=".2"><path d="M20.35 23H8.95a.933.933 0 0 1-.95-.95V6.95c0-.538.412-.95.95-.95h8.677L21.3 9.673V22.05c0 .538-.412.95-.95.95zm.317-13.073l-2.85-2.85v2.09c0 .19.126.316.316.316h2.534v.634h-2.534a.933.933 0 0 1-.95-.95V6.633H8.95c-.19 0-.317.127-.317.317v15.1c0 .19.127.317.317.317h11.4c.19 0 .317-.127.317-.317V9.927z"></path><path d="M11.87 18.45h5.23a.5.5 0 1 1 0 1h-5.23a.5.5 0 1 1 0-1zm5.43-2.305v-3.66l-2.7-1.35-2.7 1.35v3.66l2.7 1.35 2.7-1.35zm-2.7-2.34l-.75-.45 1.8-1.02.75.36-1.8 1.11zm.39-1.8l-1.71.99-.48-.3 1.8-.9.39.21zm-2.49 1.2l1.8 1.11v1.74h.6v-1.74l1.8-1.11v2.58l-2.1 1.05-2.1-1.05v-2.58z"></path></g></svg><div class="css-zkwjas">Description<!-- --> </div></a><a href="#jobs" class="css-1njwzsr"><svg class="css-8sc56q" id="Layer_1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 30 30"><g><path class="st0" d="M.7 16.8h28.6v1.8H.7v-1.8zm27.7.9l-.9.9v-1.8l.9.9z"></path><path class="st0" d="M4.6 6.1h20.7c2.2 0 3.9 1.8 3.9 3.9v13.6c0 2.2-1.8 3.9-3.9 3.9H4.6c-2.2 0-3.9-1.8-3.9-3.9V10c0-2.2 1.8-3.9 3.9-3.9zm0 1.8c-1.2 0-2.1 1-2.1 2.1v13.6c0 1.2 1 2.1 2.1 2.1h20.7c1.2 0 2.1-1 2.1-2.1V10c0-1.2-1-2.1-2.1-2.1H4.6z"></path><path class="st0" d="M10.5 16.8v4.3c0 1.1.9 2 2 2h5c1.1 0 2-.9 2-2v-4.3h-1.8v4.3c0 .1-.1.2-.2.2h-5c-.1 0-.2-.1-.2-.2v-4.3h-1.8zM8.8 7V4.5c0-1.1.9-2 2-2h8.6c1.1 0 2 .9 2 2V7h-1.8V4.5c0-.1-.1-.2-.2-.2h-8.6c-.1 0-.2.1-.2.2V7H8.8z"></path></g></svg><div class="css-zkwjas">Jobs<!-- --> <span class="css-1d2ae58">16</span></div></a><a href="#alternatives" class="css-1njwzsr"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 30 30"><g fill="#A1A1A1" stroke="#A1A1A1" stroke-width=".2"><path d="M13.626 18.015l.511-.81a.405.405 0 0 0-.136-.565.422.422 0 0 0-.576.133l-.51.81c-.927 1.469-2.25 2.312-3.632 2.312H7.416a.412.412 0 1 0 0 .823h1.87c1.68-.007 3.26-.99 4.34-2.703zm9.944-7.882l-2.023-1.99a.42.42 0 0 0-.59 0 .403.403 0 0 0 0 .578l1.316 1.291h-1.939c-1.676 0-3.26.984-4.34 2.697l-.314.498a.405.405 0 0 0 .137.566.42.42 0 0 0 .572-.134l.313-.499c.927-1.468 2.249-2.308 3.632-2.308h1.936l-1.315 1.291a.403.403 0 0 0 0 .579c.082.08.188.12.297.12a.42.42 0 0 0 .296-.12l2.027-1.99a.406.406 0 0 0-.003-.58zm-.862.34v-.04l.02.02-.02.02z"></path><path d="M20.954 22.581c.082.08.188.12.297.12a.42.42 0 0 0 .296-.12l2.027-1.99a.403.403 0 0 0 0-.58l-2.027-1.986a.42.42 0 0 0-.59 0 .403.403 0 0 0 0 .578l1.316 1.292h-1.877c-1.38 0-2.706-.843-3.632-2.312L13.69 12.71c-1.08-1.716-2.664-2.697-4.34-2.697H7.416a.412.412 0 1 0 0 .823h1.931c1.38 0 2.705.843 3.632 2.309l3.073 4.874c1.08 1.716 2.664 2.7 4.34 2.7h1.877l-1.315 1.291a.4.4 0 0 0 0 .572zm1.754-2.265l.02.02-.02.02v-.04z"></path></g></svg><div class="css-zkwjas">Alternatives<!-- --> </div></a><a href="#integrations" class="css-1njwzsr"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 30 30"><g fill="#A1A1A1" stroke="#A1A1A1"><path stroke-width=".4" d="M19.474 8.03a6.42 6.42 0 0 0-4.478 1.827 6.42 6.42 0 0 0-4.478-1.827C6.924 8.03 4 11.018 4 14.691c0 3.673 2.924 6.661 6.518 6.661a6.42 6.42 0 0 0 4.478-1.827 6.419 6.419 0 0 0 4.477 1.827c3.594 0 6.518-2.988 6.518-6.66 0-3.674-2.924-6.662-6.517-6.662zm-8.956 12.724c-3.272 0-5.933-2.72-5.933-6.063 0-3.343 2.662-6.063 5.933-6.063 1.575 0 3.005.635 4.068 1.663a6.717 6.717 0 0 0-1.63 4.4c0 1.686.616 3.227 1.63 4.401a5.84 5.84 0 0 1-4.068 1.662zm3.023-6.063a6.11 6.11 0 0 1 1.455-3.965 6.11 6.11 0 0 1 1.454 3.965 6.11 6.11 0 0 1-1.454 3.965 6.108 6.108 0 0 1-1.455-3.965zm5.933 6.063a5.838 5.838 0 0 1-4.07-1.662 6.718 6.718 0 0 0 1.632-4.401 6.717 6.717 0 0 0-1.631-4.4 5.838 5.838 0 0 1 4.069-1.663c3.27 0 5.932 2.72 5.932 6.063 0 3.342-2.661 6.063-5.932 6.063z"></path><path stroke-width=".2" d="M15.384 11.887h-.866v-.299h.866zm-.786 5.608h.865v.299h-.865zm1.384-4.548h-1.903v-.3h1.903zm.183.959h-2.421v-.299h2.421zm.085.685v.299h-2.509v-.299zm-2.384.978h2.258v.299h-2.258zm.213.954h1.72v.299h-1.72v-.299z"></path></g></svg><div class="css-zkwjas">Integrations<!-- --> </div></a><a href="#posts" class="css-1njwzsr"><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 14 14"><path fill="#A1A1A1" stroke="#999" stroke-width=".2" d="M13.093.906a3.087 3.087 0 0 0-4.37 0L.711 8.916a.4.4 0 0 0-.113.23l-.594 4.398a.4.4 0 0 0 .113.337c.075.074.18.119.284.119.018 0 .035 0 .053-.003l2.65-.358a.403.403 0 0 0-.108-.8l-2.124.287.415-3.067 3.227 3.228a.395.395 0 0 0 .567 0l8.012-8.01A3.07 3.07 0 0 0 14 3.09a3.06 3.06 0 0 0-.907-2.184zm-4.215.985l1.346 1.345-7.312 7.312-1.345-1.345L8.878 1.89zM4.801 12.434l-1.316-1.316 7.311-7.312 1.316 1.316L4.8 12.434zm7.872-7.888l-3.219-3.22a2.278 2.278 0 0 1 1.456-.52 2.28 2.28 0 0 1 2.285 2.285c0 .54-.185 1.047-.522 1.456z"></path></svg><div class="css-zkwjas">Blog Posts<!-- --> </div></a></nav><div class="css-nil"></div></div></div></div></div><div class="css-1xq3kt1"><div><div><div style="border:0;padding:0 10px 0 10px" class="css-3vlw85"><div class="css-1anvsjr"><div class="css-169quga"><a href="/ansible" class="css-msbgqg"><div class="css-1048up1"></div><div class="css-avtieu"><span>Ansible</span><span>16.9K<!-- --> Stacks</span></div></a><div class="css-omocl"></div></div><button data-testid="removeTool" class="css-pn8ojz"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 12 12"><g fill="#FFF" fill-rule="evenodd" stroke="#FFF" stroke-width=".6"><rect width="15.543" height="1.137" x="-1.805" y="5.439" rx=".569" transform="rotate(45 5.967 6.105)"></rect><rect width="15.543" height="1.137" x="-1.805" y="5.3" rx=".569" transform="rotate(135 5.967 5.967)"></rect></g></svg></button></div></div><div style="border:0;padding:0 10px 0 10px" class="css-3vlw85"><div class="css-1anvsjr"><div class="css-169quga"><a href="/terraform" class="css-msbgqg"><div class="css-1luzdj7"></div><div class="css-avtieu"><span>Terraform</span><span>19K<!-- --> Stacks</span></div></a><div class="css-omocl"></div></div><button data-testid="removeTool" class="css-pn8ojz"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 12 12"><g fill="#FFF" fill-rule="evenodd" stroke="#FFF" stroke-width=".6"><rect width="15.543" height="1.137" x="-1.805" y="5.439" rx=".569" transform="rotate(45 5.967 6.105)"></rect><rect width="15.543" height="1.137" x="-1.805" y="5.3" rx=".569" transform="rotate(135 5.967 5.967)"></rect></g></svg></button></div></div><div style="border:0;padding:0 10px 0 10px" class="css-3vlw85"><div class="css-1olkybm"><button class="css-138fyst">Get Advice</button></div></div></div></div></div><main class="css-ii8qy4"><div class="css-jaw8ve"><div class="css-19hrebc"><div style="border:0;padding:0 10px 0 10px" class="css-5k0ecd"><div style="margin-bottom:15px"><div data-testid="getAdvice" class="css-86zjul"><div class="css-1di6wpo"><div class="lazyload-wrapper"><div class="lazyload-placeholder"></div></div><h1 class="css-lr10t7">Need advice about which tool to choose?<span class="css-4yzqpf">Ask the StackShare community!</span></h1></div><button class="css-st9eg3">Get Advice</button></div></div></div><div style="border:0;padding:0 10px 0 10px;margin-bottom:15px" class="css-3vlw85"><div class="css-x7ngfe"><a href="/ansible" class="css-ihgrxl"><div class="css-wu8y54"></div><div>Ansible</div></a><div class="css-124gz8p"><div class="css-1iv3e1o"><div class="css-1ob9em9"><button class="css-1mpii3w">Track Ansible Metrics And Events In Datadog</button></div></div><div class="css-1i4hfqi"><button data-testid="follow" class="css-14pk3xx"><svg width="11" height="11" viewBox="0 0 11 11" xmlns="http://www.w3.org/2000/svg" fill-rule="evenodd" clip-rule="evenodd" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="1.5"><path d="M5.5 0v11M0 5.5h11" fill="none" stroke="#fff"></path></svg>聽<!-- -->Follow</button><button data-testid="iUseThis" class="css-1o4togz"><svg width="11" height="11" viewBox="0 0 11 11" xmlns="http://www.w3.org/2000/svg" fill-rule="evenodd" clip-rule="evenodd" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="1.5"><path d="M5.5 0v11M0 5.5h11" fill="none" stroke="#fff"></path></svg>聽I use this</button></div></div><hr class="css-2urik6"/><div class="css-1drwozb"><div class="css-gbti5j"><label>Stacks</label><span>16.9K</span></div><div class="css-1ahj942"></div><div class="css-1an0suy"><label>Followers</label><span>13.6K</span><div>+ 1</div></div><div class="css-1ahj942"></div><div class="css-gbti5j"><label>Votes</label><span>1.3K</span></div></div><button data-testid="removeTool" class="css-pn8ojz"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 12 12"><g fill="#FFF" fill-rule="evenodd" stroke="#FFF" stroke-width=".6"><rect width="15.543" height="1.137" x="-1.805" y="5.439" rx=".569" transform="rotate(45 5.967 6.105)"></rect><rect width="15.543" height="1.137" x="-1.805" y="5.3" rx=".569" transform="rotate(135 5.967 5.967)"></rect></g></svg></button></div></div><div style="border:0;padding:0 10px 0 10px;margin-bottom:15px" class="css-3vlw85"><div class="css-x7ngfe"><a href="/terraform" class="css-ihgrxl"><div class="css-1i9dr9t"></div><div>Terraform</div></a><div class="css-124gz8p"><div class="css-1iv3e1o"><div class="css-1ob9em9"><button class="css-1mpii3w">Download the eBook: Understanding Terraform</button></div></div><div class="css-1i4hfqi"><button data-testid="follow" class="css-14pk3xx"><svg width="11" height="11" viewBox="0 0 11 11" xmlns="http://www.w3.org/2000/svg" fill-rule="evenodd" clip-rule="evenodd" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="1.5"><path d="M5.5 0v11M0 5.5h11" fill="none" stroke="#fff"></path></svg>聽<!-- -->Follow</button><button data-testid="iUseThis" class="css-1o4togz"><svg width="11" height="11" viewBox="0 0 11 11" xmlns="http://www.w3.org/2000/svg" fill-rule="evenodd" clip-rule="evenodd" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="1.5"><path d="M5.5 0v11M0 5.5h11" fill="none" stroke="#fff"></path></svg>聽I use this</button></div></div><hr class="css-2urik6"/><div class="css-1drwozb"><div class="css-gbti5j"><label>Stacks</label><span>19K</span></div><div class="css-1ahj942"></div><div class="css-1an0suy"><label>Followers</label><span>11.6K</span><div>+ 1</div></div><div class="css-1ahj942"></div><div class="css-gbti5j"><label>Votes</label><span>337</span></div></div><button data-testid="removeTool" class="css-pn8ojz"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 12 12"><g fill="#FFF" fill-rule="evenodd" stroke="#FFF" stroke-width=".6"><rect width="15.543" height="1.137" x="-1.805" y="5.439" rx=".569" transform="rotate(45 5.967 6.105)"></rect><rect width="15.543" height="1.137" x="-1.805" y="5.3" rx=".569" transform="rotate(135 5.967 5.967)"></rect></g></svg></button></div></div><div style="border:0;padding:0 10px 0 10px;margin-bottom:15px" class="css-3vlw85"><div class="css-1olkybm"><div data-testid="addTool" class="css-1xjq47k"><div class="css-1enuxn2"><svg class="css-1v2ezdc" xmlns="http://www.w3.org/2000/svg" width="29" height="29" viewBox="0 0 29 29"><path fill="#FFF" d="M27.426 12.477H16.523V1.574C16.523 1.077 15.85 0 14.5 0c-1.349 0-2.023 1.077-2.023 1.574v10.903H1.574C1.077 12.477 0 13.15 0 14.5c0 1.349 1.077 2.023 1.574 2.023h10.903v10.903c0 .497.674 1.574 2.023 1.574 1.349 0 2.023-1.077 2.023-1.574V16.523h10.903c.497 0 1.574-.674 1.574-2.023 0-1.349-1.077-2.023-1.574-2.023z"></path></svg></div><div class="css-n6mbbq">Add tool</div></div></div></div><div class="css-5k0ecd"><div class="css-z3du7b"><div class="css-1s3pndt"><p><strong>Ansible vs Terraform: What are the differences?</strong></p> <p>Every growing startup or tech organization wants to automate apps and IT infrastructure. <strong>Ansible</strong> is a simple way to do that. An open-source software provisioning, configuration management, and application-deployment tool comes with its own declarative language. Ansible is an automation tool that helps drive complexity away and accelerate DevOps initiatives. Backed by RedHat <strong>Terraform</strong> acts like an orchestrator, using Packer for automation. Terraform is more of an infrastructure provisioning tool. Terraform talks to VMWare, AWS, GCP, and deploys infrastructure. From the house of HashiCorp, Terraform allows the creation, management and improvement of infrastructure. An open source code drives APIs into declarative configuration files.</p> </div></div></div><div id="decisions" style="pointer-events:none;grid-column:span 3;display:block;height:182px;margin-top:-182px"></div><div style="border-bottom:none;padding-bottom:0" class="css-5k0ecd"><div class="css-oa3yz4"><div class="css-1g9kten">Advice on Ansible and Terraform</div><div class="css-yzfa9h"><div class="css-uw1ldh"><div class="css-4gnhqq"><div class="css-xkasvz"><div class="css-atv6j6"><div class="css-1m8tyev"><div class="lazyload-wrapper"><div class="lazyload-placeholder"></div></div></div></div><div class="css-1vf0ygt"><div class="css-utnqcw">moonlight16</div><div class="css-ds0hbm"><a href="/moonlight16/decisions/102809404749940295" class="css-nil"><time>Sep 17, 2019</time> | 2 upvotes 路 210.2K views </a></div></div></div></div><div class="css-nil"><div class="css-dg4ww9"><svg xmlns="http://www.w3.org/2000/svg" width="21" height="21" viewBox="0 0 21 21"><g fill="none"><path fill="#FF7E3F" d="M20.918 19.017l-1.442-4.195a10.3 10.3 0 0 0 1.062-4.537 10.208 10.208 0 0 0-2.949-7.207A10.199 10.199 0 0 0 10.436 0a10.23 10.23 0 0 0-7.428 3.006A10.228 10.228 0 0 0 0 10.437a10.199 10.199 0 0 0 3.077 7.153 10.207 10.207 0 0 0 7.191 2.95h.016a10.3 10.3 0 0 0 4.537-1.063l4.195 1.442a1.485 1.485 0 0 0 1.543-.357c.408-.408.545-.999.358-1.544z"></path><path fill="#FFF" stroke="#FFF" stroke-width=".55" d="M10.168 14.702c.35 0 .595 0 .623.622.028.623-.297.623-.623.623-.349 0-.607-.285-.622-.623-.015-.336.297-.622.622-.622zm0-9.465a3.1 3.1 0 0 1 3.097 3.097 3.103 3.103 0 0 1-2.474 3.034v1.543a.623.623 0 1 1-1.245 0V10.81c0-.344.278-.623.622-.623 1.021 0 1.852-.83 1.852-1.852 0-1.021-.83-1.852-1.852-1.852-1.021 0-1.852.83-1.852 1.852a.623.623 0 0 1-1.245 0 3.1 3.1 0 0 1 3.097-3.097z"></path></g></svg><div class="css-z9ms26">Needs advice</div><div class="css-6uh2e7">on</div><a href="/ansible" class="css-1pwtf47"><span title="Ansible" class="css-t68yd0 service"><img src="https://img.stackshare.io/service/663/ElOjna20.png" alt="Ansible" class="css-1rz3855"/></span><span class="css-i6njnm">Ansible</span></a><a href="/chef" class="css-1pwtf47"><span title="Chef" class="css-t68yd0 service"><img src="https://img.stackshare.io/service/420/24f4ef5e7a67c0d720bf9ae69dd6de2a.png" alt="Chef" class="css-1rz3855"/></span><span class="css-i6njnm">Chef</span></a><div class="css-6uh2e7"> and </div><a href="/puppet" class="css-1pwtf47"><span title="Puppet Labs" class="css-t68yd0 service"><img src="https://img.stackshare.io/service/421/954f7381089ac290b4690c5ffd9dd7d3.png" alt="Puppet Labs" class="css-1rz3855"/></span><span class="css-i6njnm">Puppet Labs</span></a></div><div class="css-1dp4k20"><div class="css-ztg526"><p>I'm just getting started using Vagrant to help automate setting up local VMs to set up a Kubernetes cluster (development and experimentation only). (Yes, I do know about minikube)</p> <p>I'm looking for a tool to help install software packages, setup users, etc..., on these VMs. I'm also fairly new to Ansible, Chef, and Puppet. What's a good one to start with to learn? I might decide to try all 3 at some point for my own curiosity. </p> <p>The most important factors for me are simplicity, ease of use, shortest learning curve.</p></div></div></div><a class="css-1srb7t4">See more</a></div><div class="css-1pz1q9u"><div class="css-1rla8dl">Replies <span>(2)</span></div><div class="css-1cqgl9p"><div class="css-1cm2u5n"><div class="css-lhxxg6"></div><div class="css-jyena0"></div><div class="css-s6ccv3"></div></div><div class="css-uw1ldh"><div class="css-4gnhqq"><div class="css-xkasvz"><div class="css-atv6j6"><div class="css-1m8tyev"><a href="/StefanPapp" title="Visit Profile" class="css-pvufaf"><div class="lazyload-wrapper"><div class="lazyload-placeholder"></div></div></a></div></div><div class="css-1vf0ygt"><div class="css-utnqcw">Stefan Papp</div><div class="css-ds0hbm"><a href="/StefanPapp/decisions/103889909166381057" class="css-nil"><time>Mar 26, 2020</time> | 3 upvotes 路 210.2K views </a></div></div></div></div><div class="css-nil"><div class="css-dg4ww9"><svg xmlns="http://www.w3.org/2000/svg" width="21" height="21" viewBox="0 0 21 21"><g fill="none" fill-rule="evenodd"><path fill="#068DFE" fill-rule="nonzero" d="M20.917 19.017c.188.545.05 1.136-.356 1.544a1.485 1.485 0 0 1-1.544.357l-4.196-1.442a10.3 10.3 0 0 1-4.536 1.062h-.016a10.207 10.207 0 0 1-7.191-2.949A10.199 10.199 0 0 1 0 10.436a10.228 10.228 0 0 1 3.006-7.428A10.23 10.23 0 0 1 10.437 0a10.199 10.199 0 0 1 7.153 3.077 10.208 10.208 0 0 1 2.95 7.208 10.3 10.3 0 0 1-1.063 4.536l1.441 4.195z"></path><path fill="#FFF" d="M10.221 15.937c-1.024 0-1.854-.905-1.854-2.021h3.709c0 1.116-.83 2.021-1.855 2.021zm1.721-3.083H8.5C8.408 11.813 6 10.904 6 8.303 6 5.527 8.02 4.056 10.22 4h.001c2.202.056 4.221 1.527 4.221 4.303 0 2.602-2.407 3.51-2.5 4.55z"></path></g></svg><div class="css-z9ms26">Recommends</div><a href="/ansible" class="css-1pwtf47"><span title="Ansible" class="css-t68yd0 service"><img src="https://img.stackshare.io/service/663/ElOjna20.png" alt="Ansible" class="css-1rz3855"/></span><span class="css-i6njnm">Ansible</span></a></div><div class="css-1dp4k20"><div class="css-ztg526"><p>I have been working with Puppet and Ansible. The reason why I prefer ansible is the distribution of it. Ansible is more lightweight and therefore more popular. This leads to situations, where you can get fully packaged applications for ansible (e.g. confluent) supported by the vendor, but only incomplete packages for Puppet.</p> <p>The only advantage I would see with Puppet if someone wants to use Foreman. This is still better supported with Puppet.</p></div></div></div><a class="css-1srb7t4">See more</a></div></div><div class="css-1cqgl9p"><div class="css-1cm2u5n"><div class="css-lhxxg6"></div><div class="css-jyena0"></div></div><div class="css-uw1ldh"><div class="css-4gnhqq"><div class="css-xkasvz"><div class="css-atv6j6"><div class="css-1m8tyev"><a href="/gp187" title="Visit Profile" class="css-pvufaf"><div class="lazyload-wrapper"><div class="lazyload-placeholder"></div></div></a></div></div><div class="css-1vf0ygt"><div class="css-utnqcw">Gabriel Pa</div><div class="css-ds0hbm">CEO<!-- --> at NaoLogic Inc<!-- --> 路 <a href="/gp187/decisions/103871455774914381" class="css-nil"><time>Mar 23, 2020</time> | 2 upvotes 路 213.8K views </a></div></div></div></div><div class="css-nil"><div class="css-dg4ww9"><svg xmlns="http://www.w3.org/2000/svg" width="21" height="21" viewBox="0 0 21 21"><g fill="none" fill-rule="evenodd"><path fill="#068DFE" fill-rule="nonzero" d="M20.917 19.017c.188.545.05 1.136-.356 1.544a1.485 1.485 0 0 1-1.544.357l-4.196-1.442a10.3 10.3 0 0 1-4.536 1.062h-.016a10.207 10.207 0 0 1-7.191-2.949A10.199 10.199 0 0 1 0 10.436a10.228 10.228 0 0 1 3.006-7.428A10.23 10.23 0 0 1 10.437 0a10.199 10.199 0 0 1 7.153 3.077 10.208 10.208 0 0 1 2.95 7.208 10.3 10.3 0 0 1-1.063 4.536l1.441 4.195z"></path><path fill="#FFF" d="M10.221 15.937c-1.024 0-1.854-.905-1.854-2.021h3.709c0 1.116-.83 2.021-1.855 2.021zm1.721-3.083H8.5C8.408 11.813 6 10.904 6 8.303 6 5.527 8.02 4.056 10.22 4h.001c2.202.056 4.221 1.527 4.221 4.303 0 2.602-2.407 3.51-2.5 4.55z"></path></g></svg><div class="css-z9ms26">Recommends</div><a href="/kubernetes" class="css-1pwtf47"><span title="Kubernetes" class="css-t68yd0 service"><img src="https://img.stackshare.io/service/1885/21_d3cvM.png" alt="Kubernetes" class="css-1rz3855"/></span><span class="css-i6njnm">Kubernetes</span></a><div class="css-6uh2e7">at</div><a itemscope="" itemType="http://schema.org/Organization" itemProp="url" href="/companies/naologic" target="_blank" class="css-1j2w1cg"><div class="lazyload-wrapper"><div class="lazyload-placeholder"></div></div><div itemProp="name" class="css-1b2ktnx">Naologic</div></a></div><div class="css-1dp4k20"><div class="css-ztg526"><p>If you are just starting out, might as well learn <span class="tool">Kubernetes</span> There's a lot of tools that come with Kube that make it easier to use and most importantly: you become cloud-agnostic. We use Ansible because it's a lot simpler than Chef or Puppet and if you use <span class="tool">Docker Compose</span> for your deployments you can re-use them with <span class="tool">Kubernetes</span> later when you migrate</p></div><div class="css-13nf4of"><svg class="css-xd3exe" xmlns="http://www.w3.org/2000/svg" width="11" height="11" viewBox="0 0 11 11"><g fill="#49A8F9" fill-rule="evenodd"><path d="M10.5 0h-4a.5.5 0 0 0 0 1h2.793L4.146 6.146a.5.5 0 1 0 .708.708L10 1.707V4.5a.5.5 0 0 0 1 0v-4a.5.5 0 0 0-.5-.5"></path><path d="M8.5 5a.5.5 0 0 0-.5.5V10H1V3h4.5a.5.5 0 0 0 0-1h-5a.5.5 0 0 0-.5.5v8a.5.5 0 0 0 .5.5h8a.5.5 0 0 0 .5-.5v-5a.5.5 0 0 0-.5-.5"></path></g></svg><a href="http://blog.naologic.com" title="Naologic" class="css-nil">Naologic</a></div></div></div><a class="css-1srb7t4">See more</a></div></div><div class="css-gyrv08"></div></div></div><div class="css-gyrv08"></div><div class="css-n746ki"></div></div></div><div style="border-bottom:none;padding-bottom:0" class="css-5k0ecd"><div class="css-oa3yz4"><div class="css-1g9kten">Decisions about Ansible and Terraform</div><div class="css-uw1ldh"><div class="css-4gnhqq"><div class="css-xkasvz"><div class="css-atv6j6"><div class="css-1m8tyev"><div class="lazyload-wrapper"><div class="lazyload-placeholder"></div></div></div></div><div class="css-1vf0ygt"><div class="css-utnqcw"><div>Kirill Shirinkin</div></div><div class="css-ds0hbm">Cloud and DevOps Consultant<!-- --> at mkdev<!-- --> 路 <a href="/Fodoj/decisions/105221205866059203" class="css-nil"><time>Nov 16, 2020</time> <!-- -->| 3 upvotes 路 111.1K views</a></div></div></div></div><div class="css-nil"><div class="css-dg4ww9"><svg xmlns="http://www.w3.org/2000/svg" width="21" height="21" viewBox="0 0 21 21"><g fill="none"><path fill="#068DFE" d="M20.918 19.017l-1.442-4.195a10.3 10.3 0 0 0 1.062-4.537 10.208 10.208 0 0 0-2.949-7.207A10.199 10.199 0 0 0 10.436 0a10.23 10.23 0 0 0-7.428 3.006A10.228 10.228 0 0 0 0 10.437a10.199 10.199 0 0 0 3.077 7.153 10.207 10.207 0 0 0 7.191 2.95h.016a10.3 10.3 0 0 0 4.537-1.063l4.195 1.442a1.485 1.485 0 0 0 1.543-.357c.408-.408.545-1 .358-1.544z"></path><path fill="#FFF" d="M9.644 14.658a.923.923 0 0 1-.715.342.93.93 0 0 1-.71-.338l-1.98-2.36a1.044 1.044 0 0 1 .08-1.418.914.914 0 0 1 1.342.086l1.24 1.478 4.444-5.117a.914.914 0 0 1 1.342-.072c.39.372.42 1.006.068 1.418l-5.111 5.981z"></path></g></svg><div class="css-z9ms26">Chose</div><a href="/aws-copilot" class="css-1pwtf47"><span title="AWS Copilot" class="css-t68yd0 service"><img src="https://img.stackshare.io/service/12689/no-img.png" alt="AWS Copilot" class="css-1rz3855"/></span><span class="css-i6njnm">AWS Copilot</span></a><div class="css-6uh2e7">over</div><a href="/aws-cloudformation" class="css-1pwtf47"><span title="AWS CloudFormation" class="css-t68yd0 service"><img src="https://img.stackshare.io/service/411/aws-cloudformation.png" alt="AWS CloudFormation" class="css-1rz3855"/></span><span class="css-i6njnm">AWS CloudFormation</span></a><a href="/google-cloud-run" class="css-1pwtf47"><span title="Google Cloud Run" class="css-t68yd0 service"><img src="https://img.stackshare.io/service/10762/google-cloud-run-logo.png" alt="Google Cloud Run" class="css-1rz3855"/></span><span class="css-i6njnm">Google Cloud Run</span></a><a href="/terraform" class="css-1pwtf47"><span title="Terraform" class="css-t68yd0 service"><img src="https://img.stackshare.io/service/1276/og-image-8b3e4f7d.png" alt="Terraform" class="css-1rz3855"/></span><span class="css-i6njnm">Terraform</span></a><div class="css-6uh2e7">at</div><a itemscope="" itemType="http://schema.org/Organization" itemProp="url" href="/companies/transcripto" target="_blank" class="css-1j2w1cg"><div class="lazyload-wrapper"><div class="lazyload-placeholder"></div></div><div itemProp="name" class="css-1b2ktnx">Transcripto</div></a><span class="css-103289b">(</span><a itemscope="" itemType="http://schema.org/Organization" itemProp="url" href="/transcripto/transcripto" target="_blank" class="css-1j2w1cg"><svg class="css-lnzci0" width="24" height="24" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><defs><path d="M2.4 0h19.2A2.4 2.4 0 0 1 24 2.4V17H0V2.4A2.4 2.4 0 0 1 2.4 0z" id="path-1"></path><path d="M0 0h24v4.6A2.4 2.4 0 0 1 21.6 7H2.4A2.4 2.4 0 0 1 0 4.6V0z" id="path-3"></path></defs><g id="Page-1" fill="none" fill-rule="evenodd"><g id="default-stack-icon"><g id="Group"><g id="b-link" fill="#333" fill-rule="nonzero"><path d="M2.4 0h19.2A2.4 2.4 0 0 1 24 2.4V17H0V2.4A2.4 2.4 0 0 1 2.4 0z" id="b"></path></g><g id="Clipped"><mask id="mask-2" fill="#fff"><use xlink:href="#path-1"></use></mask><path d="M2.704 1.967c0-.14.11-.253.249-.253h1.53c.138 0 .25.11.25.253v1.552a.25.25 0 0 1-.25.252h-1.53a.249.249 0 0 1-.249-.252V1.967zm0 3.428c0-.14.11-.252.249-.252h1.53c.138 0 .25.11.25.252v1.553a.25.25 0 0 1-.25.252h-1.53a.249.249 0 0 1-.249-.252V5.395zm0 3.429c0-.14.11-.253.249-.253h1.53a.25.25 0 0 1 .25.253v1.552a.25.25 0 0 1-.25.253h-1.53a.249.249 0 0 1-.249-.253V8.824zm0 3.428c0-.14.11-.252.249-.252h1.53c.138 0 .25.11.25.252v1.553a.25.25 0 0 1-.25.252h-1.53a.249.249 0 0 1-.249-.252v-1.553zM10.14 1.967c0-.14.11-.253.25-.253h1.53c.138 0 .249.11.249.253v1.552c0 .14-.109.252-.249.252h-1.53a.249.249 0 0 1-.25-.252V1.967zm0 3.428c0-.14.11-.252.25-.252h1.53c.138 0 .249.11.249.252v1.553c0 .14-.109.252-.249.252h-1.53a.249.249 0 0 1-.25-.252V5.395zm0 3.429c0-.14.11-.253.25-.253h1.53a.25.25 0 0 1 .249.253v1.552a.25.25 0 0 1-.249.253h-1.53a.249.249 0 0 1-.25-.253V8.824zm0 3.428c0-.14.11-.252.25-.252h1.53c.138 0 .249.11.249.252v1.553c0 .14-.109.252-.249.252h-1.53a.249.249 0 0 1-.25-.252v-1.553zM6.423 1.967a.25.25 0 0 1 .248-.253h1.531a.25.25 0 0 1 .249.253v1.552a.25.25 0 0 1-.249.252h-1.53a.249.249 0 0 1-.25-.252V1.967h.001zm0 3.428c0-.14.109-.252.248-.252h1.531a.25.25 0 0 1 .249.252v1.553a.25.25 0 0 1-.249.252h-1.53a.249.249 0 0 1-.25-.252V5.395h.001zm0 3.429a.25.25 0 0 1 .248-.253h1.531a.25.25 0 0 1 .249.253v1.552a.25.25 0 0 1-.249.253h-1.53a.249.249 0 0 1-.25-.253V8.824h.001zm0 3.428c0-.14.109-.252.248-.252h1.531a.25.25 0 0 1 .249.252v1.553a.25.25 0 0 1-.249.252h-1.53a.249.249 0 0 1-.25-.252v-1.553h.001zM13.86 1.967c0-.14.108-.253.248-.253h1.53c.138 0 .25.11.25.253v1.552a.25.25 0 0 1-.25.252h-1.53a.249.249 0 0 1-.249-.252V1.967h.001zm0 3.428c0-.14.108-.252.248-.252h1.53c.138 0 .25.11.25.252v1.553a.25.25 0 0 1-.25.252h-1.53a.249.249 0 0 1-.249-.252V5.395h.001zm0 3.429c0-.14.108-.253.248-.253h1.53a.25.25 0 0 1 .25.253v1.552a.25.25 0 0 1-.25.253h-1.53a.249.249 0 0 1-.249-.253V8.824h.001zm3.717-6.857c0-.14.11-.253.25-.253h1.53a.25.25 0 0 1 .249.253v1.552a.25.25 0 0 1-.25.252h-1.53a.249.249 0 0 1-.249-.252V1.967zm0 3.428c0-.14.11-.252.25-.252h1.53a.25.25 0 0 1 .249.252v1.553a.25.25 0 0 1-.25.252h-1.53a.249.249 0 0 1-.249-.252V5.395zm0 3.429c0-.14.11-.253.25-.253h1.53a.25.25 0 0 1 .249.253v1.552a.25.25 0 0 1-.25.253h-1.53a.249.249 0 0 1-.249-.253V8.824z" id="Shape" fill="#919191" fill-rule="nonzero" opacity=".404" mask="url(#mask-2)"></path></g></g><g id="d-link" transform="translate(0 17)" fill="#FFF" fill-rule="nonzero"><path d="M0 0h24v4.6A2.4 2.4 0 0 1 21.6 7H2.4A2.4 2.4 0 0 1 0 4.6V0z" id="d"></path></g><g id="Clipped" transform="translate(0 17)"><mask id="mask-4" fill="#fff"><use xlink:href="#path-3"></use></mask><rect id="Rectangle-path" fill="#E5E5E5" fill-rule="nonzero" mask="url(#mask-4)" x="5.408" y="2" width="13.521" height="1.717" rx=".859"></rect></g></g></g></svg><div itemProp="name" class="css-1b2ktnx">Transcripto</div></a><span class="css-odgfgk">)</span></div><div class="css-1dp4k20"><div class="css-ztg526"><p>Ok, so first - AWS Copilot <em>is</em> CloudFormation under the hood, but the way it works results in you not thinking about CFN anymore. AWS found the right balance with Copilot - it's insanely simple to setup production-ready multi-account environment with many services inside, with CI/CD out of the box etc etc. It's pretty new, but even now it was enough to launch Transcripto, which uses may be a dozen of different AWS services, all bound together by Copilot.</p></div></div></div><a class="css-1srb7t4">See more</a></div><div class="css-uw1ldh"><div class="css-4gnhqq"><div class="css-xkasvz"><div class="css-atv6j6"><div class="css-1m8tyev"><div class="lazyload-wrapper"><div class="lazyload-placeholder"></div></div></div></div><div class="css-1vf0ygt"><div class="css-utnqcw"><div>unthought</div></div><div class="css-ds0hbm"><a href="/unthought/decisions/104112463312995040" class="css-nil"><time>May 4, 2020</time> <!-- -->| 5 upvotes 路 311.6K views</a></div></div></div></div><div class="css-nil"><div class="css-dg4ww9"><svg xmlns="http://www.w3.org/2000/svg" width="21" height="21" viewBox="0 0 21 21"><g fill="none"><path fill="#068DFE" d="M20.918 19.017l-1.442-4.195a10.3 10.3 0 0 0 1.062-4.537 10.208 10.208 0 0 0-2.949-7.207A10.199 10.199 0 0 0 10.436 0a10.23 10.23 0 0 0-7.428 3.006A10.228 10.228 0 0 0 0 10.437a10.199 10.199 0 0 0 3.077 7.153 10.207 10.207 0 0 0 7.191 2.95h.016a10.3 10.3 0 0 0 4.537-1.063l4.195 1.442a1.485 1.485 0 0 0 1.543-.357c.408-.408.545-1 .358-1.544z"></path><path fill="#FFF" d="M9.644 14.658a.923.923 0 0 1-.715.342.93.93 0 0 1-.71-.338l-1.98-2.36a1.044 1.044 0 0 1 .08-1.418.914.914 0 0 1 1.342.086l1.24 1.478 4.444-5.117a.914.914 0 0 1 1.342-.072c.39.372.42 1.006.068 1.418l-5.111 5.981z"></path></g></svg><div class="css-z9ms26">Chose</div><a href="/pulumi" class="css-1pwtf47"><span title="Pulumi" class="css-t68yd0 service"><img src="https://img.stackshare.io/service/9053/pulumi_mark_flat_onPurple.png" alt="Pulumi" class="css-1rz3855"/></span><span class="css-i6njnm">Pulumi</span></a><div class="css-6uh2e7">over</div><a href="/aws-cloudformation" class="css-1pwtf47"><span title="AWS CloudFormation" class="css-t68yd0 service"><img src="https://img.stackshare.io/service/411/aws-cloudformation.png" alt="AWS CloudFormation" class="css-1rz3855"/></span><span class="css-i6njnm">AWS CloudFormation</span></a><a href="/terraform" class="css-1pwtf47"><span title="Terraform" class="css-t68yd0 service"><img src="https://img.stackshare.io/service/1276/og-image-8b3e4f7d.png" alt="Terraform" class="css-1rz3855"/></span><span class="css-i6njnm">Terraform</span></a><div class="css-6uh2e7">in</div><a itemscope="" itemType="http://schema.org/Organization" itemProp="url" href="/unthought/my-stack" target="_blank" class="css-1j2w1cg"><svg class="css-lnzci0" width="24" height="24" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><defs><path d="M2.4 0h19.2A2.4 2.4 0 0 1 24 2.4V17H0V2.4A2.4 2.4 0 0 1 2.4 0z" id="path-1"></path><path d="M0 0h24v4.6A2.4 2.4 0 0 1 21.6 7H2.4A2.4 2.4 0 0 1 0 4.6V0z" id="path-3"></path></defs><g id="Page-1" fill="none" fill-rule="evenodd"><g id="default-stack-icon"><g id="Group"><g id="b-link" fill="#333" fill-rule="nonzero"><path d="M2.4 0h19.2A2.4 2.4 0 0 1 24 2.4V17H0V2.4A2.4 2.4 0 0 1 2.4 0z" id="b"></path></g><g id="Clipped"><mask id="mask-2" fill="#fff"><use xlink:href="#path-1"></use></mask><path d="M2.704 1.967c0-.14.11-.253.249-.253h1.53c.138 0 .25.11.25.253v1.552a.25.25 0 0 1-.25.252h-1.53a.249.249 0 0 1-.249-.252V1.967zm0 3.428c0-.14.11-.252.249-.252h1.53c.138 0 .25.11.25.252v1.553a.25.25 0 0 1-.25.252h-1.53a.249.249 0 0 1-.249-.252V5.395zm0 3.429c0-.14.11-.253.249-.253h1.53a.25.25 0 0 1 .25.253v1.552a.25.25 0 0 1-.25.253h-1.53a.249.249 0 0 1-.249-.253V8.824zm0 3.428c0-.14.11-.252.249-.252h1.53c.138 0 .25.11.25.252v1.553a.25.25 0 0 1-.25.252h-1.53a.249.249 0 0 1-.249-.252v-1.553zM10.14 1.967c0-.14.11-.253.25-.253h1.53c.138 0 .249.11.249.253v1.552c0 .14-.109.252-.249.252h-1.53a.249.249 0 0 1-.25-.252V1.967zm0 3.428c0-.14.11-.252.25-.252h1.53c.138 0 .249.11.249.252v1.553c0 .14-.109.252-.249.252h-1.53a.249.249 0 0 1-.25-.252V5.395zm0 3.429c0-.14.11-.253.25-.253h1.53a.25.25 0 0 1 .249.253v1.552a.25.25 0 0 1-.249.253h-1.53a.249.249 0 0 1-.25-.253V8.824zm0 3.428c0-.14.11-.252.25-.252h1.53c.138 0 .249.11.249.252v1.553c0 .14-.109.252-.249.252h-1.53a.249.249 0 0 1-.25-.252v-1.553zM6.423 1.967a.25.25 0 0 1 .248-.253h1.531a.25.25 0 0 1 .249.253v1.552a.25.25 0 0 1-.249.252h-1.53a.249.249 0 0 1-.25-.252V1.967h.001zm0 3.428c0-.14.109-.252.248-.252h1.531a.25.25 0 0 1 .249.252v1.553a.25.25 0 0 1-.249.252h-1.53a.249.249 0 0 1-.25-.252V5.395h.001zm0 3.429a.25.25 0 0 1 .248-.253h1.531a.25.25 0 0 1 .249.253v1.552a.25.25 0 0 1-.249.253h-1.53a.249.249 0 0 1-.25-.253V8.824h.001zm0 3.428c0-.14.109-.252.248-.252h1.531a.25.25 0 0 1 .249.252v1.553a.25.25 0 0 1-.249.252h-1.53a.249.249 0 0 1-.25-.252v-1.553h.001zM13.86 1.967c0-.14.108-.253.248-.253h1.53c.138 0 .25.11.25.253v1.552a.25.25 0 0 1-.25.252h-1.53a.249.249 0 0 1-.249-.252V1.967h.001zm0 3.428c0-.14.108-.252.248-.252h1.53c.138 0 .25.11.25.252v1.553a.25.25 0 0 1-.25.252h-1.53a.249.249 0 0 1-.249-.252V5.395h.001zm0 3.429c0-.14.108-.253.248-.253h1.53a.25.25 0 0 1 .25.253v1.552a.25.25 0 0 1-.25.253h-1.53a.249.249 0 0 1-.249-.253V8.824h.001zm3.717-6.857c0-.14.11-.253.25-.253h1.53a.25.25 0 0 1 .249.253v1.552a.25.25 0 0 1-.25.252h-1.53a.249.249 0 0 1-.249-.252V1.967zm0 3.428c0-.14.11-.252.25-.252h1.53a.25.25 0 0 1 .249.252v1.553a.25.25 0 0 1-.25.252h-1.53a.249.249 0 0 1-.249-.252V5.395zm0 3.429c0-.14.11-.253.25-.253h1.53a.25.25 0 0 1 .249.253v1.552a.25.25 0 0 1-.25.253h-1.53a.249.249 0 0 1-.249-.253V8.824z" id="Shape" fill="#919191" fill-rule="nonzero" opacity=".404" mask="url(#mask-2)"></path></g></g><g id="d-link" transform="translate(0 17)" fill="#FFF" fill-rule="nonzero"><path d="M0 0h24v4.6A2.4 2.4 0 0 1 21.6 7H2.4A2.4 2.4 0 0 1 0 4.6V0z" id="d"></path></g><g id="Clipped" transform="translate(0 17)"><mask id="mask-4" fill="#fff"><use xlink:href="#path-3"></use></mask><rect id="Rectangle-path" fill="#E5E5E5" fill-rule="nonzero" mask="url(#mask-4)" x="5.408" y="2" width="13.521" height="1.717" rx=".859"></rect></g></g></g></svg><div itemProp="name" class="css-1b2ktnx">My Stack</div></a></div><div class="css-1dp4k20"><div class="css-ztg526"><p>Because Pulumi uses real programming languages, you can actually write abstractions for your infrastructure code, which is incredibly empowering. You still 'describe' your desired state, but by having a programming language at your fingers, you can factor out patterns, and package it up for easier consumption.</p></div></div></div><a class="css-1srb7t4">See more</a></div><div class="css-uw1ldh"><div class="css-4gnhqq"><div class="css-xkasvz"><div class="css-atv6j6"><div class="css-1m8tyev"><div class="lazyload-wrapper"><div class="lazyload-placeholder"></div></div></div></div><div class="css-1vf0ygt"><div class="css-utnqcw"><div>Sergey Ivanov</div></div><div class="css-ds0hbm">Contractor<!-- --> 路 <a href="/sergey-ivanov-at-adaptive/decisions/104015003607719234" class="css-nil"><time>Apr 17, 2020</time> <!-- -->| 4 upvotes 路 310.2K views</a></div></div></div></div><div class="css-nil"><div class="css-dg4ww9"><svg xmlns="http://www.w3.org/2000/svg" width="21" height="21" viewBox="0 0 21 21"><g fill="none"><path fill="#068DFE" d="M20.918 19.017l-1.442-4.195a10.3 10.3 0 0 0 1.062-4.537 10.208 10.208 0 0 0-2.949-7.207A10.199 10.199 0 0 0 10.436 0a10.23 10.23 0 0 0-7.428 3.006A10.228 10.228 0 0 0 0 10.437a10.199 10.199 0 0 0 3.077 7.153 10.207 10.207 0 0 0 7.191 2.95h.016a10.3 10.3 0 0 0 4.537-1.063l4.195 1.442a1.485 1.485 0 0 0 1.543-.357c.408-.408.545-1 .358-1.544z"></path><path fill="#FFF" d="M9.644 14.658a.923.923 0 0 1-.715.342.93.93 0 0 1-.71-.338l-1.98-2.36a1.044 1.044 0 0 1 .08-1.418.914.914 0 0 1 1.342.086l1.24 1.478 4.444-5.117a.914.914 0 0 1 1.342-.072c.39.372.42 1.006.068 1.418l-5.111 5.981z"></path></g></svg><div class="css-z9ms26">Chose</div><a href="/terraform" class="css-1pwtf47"><span title="Terraform" class="css-t68yd0 service"><img src="https://img.stackshare.io/service/1276/og-image-8b3e4f7d.png" alt="Terraform" class="css-1rz3855"/></span><span class="css-i6njnm">Terraform</span></a><div class="css-6uh2e7">over</div><a href="/aws-cloudformation" class="css-1pwtf47"><span title="AWS CloudFormation" class="css-t68yd0 service"><img src="https://img.stackshare.io/service/411/aws-cloudformation.png" alt="AWS CloudFormation" class="css-1rz3855"/></span><span class="css-i6njnm">AWS CloudFormation</span></a><a href="/pulumi" class="css-1pwtf47"><span title="Pulumi" class="css-t68yd0 service"><img src="https://img.stackshare.io/service/9053/pulumi_mark_flat_onPurple.png" alt="Pulumi" class="css-1rz3855"/></span><span class="css-i6njnm">Pulumi</span></a><div class="css-6uh2e7">at</div><a itemscope="" itemType="http://schema.org/Organization" itemProp="url" href="/companies/AFC" target="_blank" class="css-1j2w1cg"><div class="lazyload-wrapper"><div class="lazyload-placeholder"></div></div><div itemProp="name" class="css-1b2ktnx">Adaptive</div></a><span class="css-103289b">(</span><a itemscope="" itemType="http://schema.org/Organization" itemProp="url" href="/AFC/delta-project" target="_blank" class="css-1j2w1cg"><svg class="css-lnzci0" width="24" height="24" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><defs><path d="M2.4 0h19.2A2.4 2.4 0 0 1 24 2.4V17H0V2.4A2.4 2.4 0 0 1 2.4 0z" id="path-1"></path><path d="M0 0h24v4.6A2.4 2.4 0 0 1 21.6 7H2.4A2.4 2.4 0 0 1 0 4.6V0z" id="path-3"></path></defs><g id="Page-1" fill="none" fill-rule="evenodd"><g id="default-stack-icon"><g id="Group"><g id="b-link" fill="#333" fill-rule="nonzero"><path d="M2.4 0h19.2A2.4 2.4 0 0 1 24 2.4V17H0V2.4A2.4 2.4 0 0 1 2.4 0z" id="b"></path></g><g id="Clipped"><mask id="mask-2" fill="#fff"><use xlink:href="#path-1"></use></mask><path d="M2.704 1.967c0-.14.11-.253.249-.253h1.53c.138 0 .25.11.25.253v1.552a.25.25 0 0 1-.25.252h-1.53a.249.249 0 0 1-.249-.252V1.967zm0 3.428c0-.14.11-.252.249-.252h1.53c.138 0 .25.11.25.252v1.553a.25.25 0 0 1-.25.252h-1.53a.249.249 0 0 1-.249-.252V5.395zm0 3.429c0-.14.11-.253.249-.253h1.53a.25.25 0 0 1 .25.253v1.552a.25.25 0 0 1-.25.253h-1.53a.249.249 0 0 1-.249-.253V8.824zm0 3.428c0-.14.11-.252.249-.252h1.53c.138 0 .25.11.25.252v1.553a.25.25 0 0 1-.25.252h-1.53a.249.249 0 0 1-.249-.252v-1.553zM10.14 1.967c0-.14.11-.253.25-.253h1.53c.138 0 .249.11.249.253v1.552c0 .14-.109.252-.249.252h-1.53a.249.249 0 0 1-.25-.252V1.967zm0 3.428c0-.14.11-.252.25-.252h1.53c.138 0 .249.11.249.252v1.553c0 .14-.109.252-.249.252h-1.53a.249.249 0 0 1-.25-.252V5.395zm0 3.429c0-.14.11-.253.25-.253h1.53a.25.25 0 0 1 .249.253v1.552a.25.25 0 0 1-.249.253h-1.53a.249.249 0 0 1-.25-.253V8.824zm0 3.428c0-.14.11-.252.25-.252h1.53c.138 0 .249.11.249.252v1.553c0 .14-.109.252-.249.252h-1.53a.249.249 0 0 1-.25-.252v-1.553zM6.423 1.967a.25.25 0 0 1 .248-.253h1.531a.25.25 0 0 1 .249.253v1.552a.25.25 0 0 1-.249.252h-1.53a.249.249 0 0 1-.25-.252V1.967h.001zm0 3.428c0-.14.109-.252.248-.252h1.531a.25.25 0 0 1 .249.252v1.553a.25.25 0 0 1-.249.252h-1.53a.249.249 0 0 1-.25-.252V5.395h.001zm0 3.429a.25.25 0 0 1 .248-.253h1.531a.25.25 0 0 1 .249.253v1.552a.25.25 0 0 1-.249.253h-1.53a.249.249 0 0 1-.25-.253V8.824h.001zm0 3.428c0-.14.109-.252.248-.252h1.531a.25.25 0 0 1 .249.252v1.553a.25.25 0 0 1-.249.252h-1.53a.249.249 0 0 1-.25-.252v-1.553h.001zM13.86 1.967c0-.14.108-.253.248-.253h1.53c.138 0 .25.11.25.253v1.552a.25.25 0 0 1-.25.252h-1.53a.249.249 0 0 1-.249-.252V1.967h.001zm0 3.428c0-.14.108-.252.248-.252h1.53c.138 0 .25.11.25.252v1.553a.25.25 0 0 1-.25.252h-1.53a.249.249 0 0 1-.249-.252V5.395h.001zm0 3.429c0-.14.108-.253.248-.253h1.53a.25.25 0 0 1 .25.253v1.552a.25.25 0 0 1-.25.253h-1.53a.249.249 0 0 1-.249-.253V8.824h.001zm3.717-6.857c0-.14.11-.253.25-.253h1.53a.25.25 0 0 1 .249.253v1.552a.25.25 0 0 1-.25.252h-1.53a.249.249 0 0 1-.249-.252V1.967zm0 3.428c0-.14.11-.252.25-.252h1.53a.25.25 0 0 1 .249.252v1.553a.25.25 0 0 1-.25.252h-1.53a.249.249 0 0 1-.249-.252V5.395zm0 3.429c0-.14.11-.253.25-.253h1.53a.25.25 0 0 1 .249.253v1.552a.25.25 0 0 1-.25.253h-1.53a.249.249 0 0 1-.249-.253V8.824z" id="Shape" fill="#919191" fill-rule="nonzero" opacity=".404" mask="url(#mask-2)"></path></g></g><g id="d-link" transform="translate(0 17)" fill="#FFF" fill-rule="nonzero"><path d="M0 0h24v4.6A2.4 2.4 0 0 1 21.6 7H2.4A2.4 2.4 0 0 1 0 4.6V0z" id="d"></path></g><g id="Clipped" transform="translate(0 17)"><mask id="mask-4" fill="#fff"><use xlink:href="#path-3"></use></mask><rect id="Rectangle-path" fill="#E5E5E5" fill-rule="nonzero" mask="url(#mask-4)" x="5.408" y="2" width="13.521" height="1.717" rx=".859"></rect></g></g></g></svg><div itemProp="name" class="css-1b2ktnx">Delta Project</div></a><span class="css-odgfgk">)</span></div><div class="css-1dp4k20"><div class="css-ztg526">Overview <p>We use Terraform to manage AWS cloud environment for the project. It is pretty complex, largely static, security-focused, and constantly evolving.</p> <p>Terraform provides descriptive <em>(declarative)</em> way of defining the target configuration, where it can work out the dependencies between configuration elements and apply differences without re-provisioning the entire cloud stack.</p> Advantages <p>Terraform is vendor-neutral in a way that it is using a common configuration language (HCL) with plugins (providers) for multiple cloud and service providers.</p> <p>Terraform keeps track of the previous state of the deployment and applies incremental changes, resulting in faster deployment times.</p> <p>Terraform allows us to share reusable modules between projects. We have built an impressive library of modules internally, which makes it very easy to assemble a new project from pre-fabricated building blocks.</p> Disadvantages <p>Software is imperfect, and Terraform is no exception. Occasionally we hit annoying bugs that we have to work around. The interaction with any underlying APIs is encapsulated inside 3rd party Terraform providers, and any bug fixes or new features require a provider release. Some providers have very poor coverage of the underlying APIs.</p> <p>Terraform is not great for managing highly dynamic parts of cloud environments. That part is better delegated to other tools or scripts.</p> <p>Terraform state may go out of sync with the target environment or with the source configuration, which often results in painful reconciliation.</p></div></div></div><a class="css-1srb7t4">See more</a></div><div class="css-uw1ldh"><div class="css-4gnhqq"><div class="css-xkasvz"><div class="css-atv6j6"><div class="css-1m8tyev"><div class="lazyload-wrapper"><div class="lazyload-placeholder"></div></div></div></div><div class="css-1vf0ygt"><div class="css-utnqcw"><div>Timothy Adams</div></div><div class="css-ds0hbm">SRE<!-- --> 路 <a href="/timothy6177/decisions/103857300410614402" class="css-nil"><time>Mar 20, 2020</time> <!-- -->| 7 upvotes 路 270.5K views</a></div></div></div></div><div class="css-nil"><div class="css-dg4ww9"><svg xmlns="http://www.w3.org/2000/svg" width="21" height="21" viewBox="0 0 21 21"><g fill="none"><path fill="#068DFE" d="M20.918 19.017l-1.442-4.195a10.3 10.3 0 0 0 1.062-4.537 10.208 10.208 0 0 0-2.949-7.207A10.199 10.199 0 0 0 10.436 0a10.23 10.23 0 0 0-7.428 3.006A10.228 10.228 0 0 0 0 10.437a10.199 10.199 0 0 0 3.077 7.153 10.207 10.207 0 0 0 7.191 2.95h.016a10.3 10.3 0 0 0 4.537-1.063l4.195 1.442a1.485 1.485 0 0 0 1.543-.357c.408-.408.545-1 .358-1.544z"></path><path fill="#FFF" d="M9.644 14.658a.923.923 0 0 1-.715.342.93.93 0 0 1-.71-.338l-1.98-2.36a1.044 1.044 0 0 1 .08-1.418.914.914 0 0 1 1.342.086l1.24 1.478 4.444-5.117a.914.914 0 0 1 1.342-.072c.39.372.42 1.006.068 1.418l-5.111 5.981z"></path></g></svg><div class="css-z9ms26">Chose</div><a href="/terraform" class="css-1pwtf47"><span title="Terraform" class="css-t68yd0 service"><img src="https://img.stackshare.io/service/1276/og-image-8b3e4f7d.png" alt="Terraform" class="css-1rz3855"/></span><span class="css-i6njnm">Terraform</span></a><div class="css-6uh2e7">over</div><a href="/aws-cloudformation" class="css-1pwtf47"><span title="AWS CloudFormation" class="css-t68yd0 service"><img src="https://img.stackshare.io/service/411/aws-cloudformation.png" alt="AWS CloudFormation" class="css-1rz3855"/></span><span class="css-i6njnm">AWS CloudFormation</span></a><a href="/google-cloud-deployment-manager" class="css-1pwtf47"><span title="Google Cloud Deployment Manager" class="css-t68yd0 service"><img src="https://img.stackshare.io/service/6810/deployment-manager-3.png" alt="Google Cloud Deployment Manager" class="css-1rz3855"/></span><span class="css-i6njnm">Google Cloud Deployment Manager</span></a><div class="css-6uh2e7">in</div><a itemscope="" itemType="http://schema.org/Organization" itemProp="url" href="/timothy6177/my-stack" target="_blank" class="css-1j2w1cg"><svg class="css-lnzci0" width="24" height="24" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><defs><path d="M2.4 0h19.2A2.4 2.4 0 0 1 24 2.4V17H0V2.4A2.4 2.4 0 0 1 2.4 0z" id="path-1"></path><path d="M0 0h24v4.6A2.4 2.4 0 0 1 21.6 7H2.4A2.4 2.4 0 0 1 0 4.6V0z" id="path-3"></path></defs><g id="Page-1" fill="none" fill-rule="evenodd"><g id="default-stack-icon"><g id="Group"><g id="b-link" fill="#333" fill-rule="nonzero"><path d="M2.4 0h19.2A2.4 2.4 0 0 1 24 2.4V17H0V2.4A2.4 2.4 0 0 1 2.4 0z" id="b"></path></g><g id="Clipped"><mask id="mask-2" fill="#fff"><use xlink:href="#path-1"></use></mask><path d="M2.704 1.967c0-.14.11-.253.249-.253h1.53c.138 0 .25.11.25.253v1.552a.25.25 0 0 1-.25.252h-1.53a.249.249 0 0 1-.249-.252V1.967zm0 3.428c0-.14.11-.252.249-.252h1.53c.138 0 .25.11.25.252v1.553a.25.25 0 0 1-.25.252h-1.53a.249.249 0 0 1-.249-.252V5.395zm0 3.429c0-.14.11-.253.249-.253h1.53a.25.25 0 0 1 .25.253v1.552a.25.25 0 0 1-.25.253h-1.53a.249.249 0 0 1-.249-.253V8.824zm0 3.428c0-.14.11-.252.249-.252h1.53c.138 0 .25.11.25.252v1.553a.25.25 0 0 1-.25.252h-1.53a.249.249 0 0 1-.249-.252v-1.553zM10.14 1.967c0-.14.11-.253.25-.253h1.53c.138 0 .249.11.249.253v1.552c0 .14-.109.252-.249.252h-1.53a.249.249 0 0 1-.25-.252V1.967zm0 3.428c0-.14.11-.252.25-.252h1.53c.138 0 .249.11.249.252v1.553c0 .14-.109.252-.249.252h-1.53a.249.249 0 0 1-.25-.252V5.395zm0 3.429c0-.14.11-.253.25-.253h1.53a.25.25 0 0 1 .249.253v1.552a.25.25 0 0 1-.249.253h-1.53a.249.249 0 0 1-.25-.253V8.824zm0 3.428c0-.14.11-.252.25-.252h1.53c.138 0 .249.11.249.252v1.553c0 .14-.109.252-.249.252h-1.53a.249.249 0 0 1-.25-.252v-1.553zM6.423 1.967a.25.25 0 0 1 .248-.253h1.531a.25.25 0 0 1 .249.253v1.552a.25.25 0 0 1-.249.252h-1.53a.249.249 0 0 1-.25-.252V1.967h.001zm0 3.428c0-.14.109-.252.248-.252h1.531a.25.25 0 0 1 .249.252v1.553a.25.25 0 0 1-.249.252h-1.53a.249.249 0 0 1-.25-.252V5.395h.001zm0 3.429a.25.25 0 0 1 .248-.253h1.531a.25.25 0 0 1 .249.253v1.552a.25.25 0 0 1-.249.253h-1.53a.249.249 0 0 1-.25-.253V8.824h.001zm0 3.428c0-.14.109-.252.248-.252h1.531a.25.25 0 0 1 .249.252v1.553a.25.25 0 0 1-.249.252h-1.53a.249.249 0 0 1-.25-.252v-1.553h.001zM13.86 1.967c0-.14.108-.253.248-.253h1.53c.138 0 .25.11.25.253v1.552a.25.25 0 0 1-.25.252h-1.53a.249.249 0 0 1-.249-.252V1.967h.001zm0 3.428c0-.14.108-.252.248-.252h1.53c.138 0 .25.11.25.252v1.553a.25.25 0 0 1-.25.252h-1.53a.249.249 0 0 1-.249-.252V5.395h.001zm0 3.429c0-.14.108-.253.248-.253h1.53a.25.25 0 0 1 .25.253v1.552a.25.25 0 0 1-.25.253h-1.53a.249.249 0 0 1-.249-.253V8.824h.001zm3.717-6.857c0-.14.11-.253.25-.253h1.53a.25.25 0 0 1 .249.253v1.552a.25.25 0 0 1-.25.252h-1.53a.249.249 0 0 1-.249-.252V1.967zm0 3.428c0-.14.11-.252.25-.252h1.53a.25.25 0 0 1 .249.252v1.553a.25.25 0 0 1-.25.252h-1.53a.249.249 0 0 1-.249-.252V5.395zm0 3.429c0-.14.11-.253.25-.253h1.53a.25.25 0 0 1 .249.253v1.552a.25.25 0 0 1-.25.253h-1.53a.249.249 0 0 1-.249-.253V8.824z" id="Shape" fill="#919191" fill-rule="nonzero" opacity=".404" mask="url(#mask-2)"></path></g></g><g id="d-link" transform="translate(0 17)" fill="#FFF" fill-rule="nonzero"><path d="M0 0h24v4.6A2.4 2.4 0 0 1 21.6 7H2.4A2.4 2.4 0 0 1 0 4.6V0z" id="d"></path></g><g id="Clipped" transform="translate(0 17)"><mask id="mask-4" fill="#fff"><use xlink:href="#path-3"></use></mask><rect id="Rectangle-path" fill="#E5E5E5" fill-rule="nonzero" mask="url(#mask-4)" x="5.408" y="2" width="13.521" height="1.717" rx=".859"></rect></g></g></g></svg><div itemProp="name" class="css-1b2ktnx">My Stack</div></a></div><div class="css-1dp4k20"><div class="css-ztg526"><p>I personally am not a huge fan of vendor lock in for multiple reasons:</p> <ul> <li>I've seen cost saving moves to the cloud end up costing a fortune and trapping companies due to over utilization of cloud specific features.</li> <li>I've seen S3 failures nearly take down half the internet.</li> <li>I've seen companies get stuck in the cloud because they aren't built cloud agnostic.</li> </ul> <p>I choose to use terraform for my cloud provisioning for these reasons:</p> <ul> <li>It's cloud agnostic so I can use it no matter where I am.</li> <li>It isn't difficult to use and uses a relatively easy to read language.</li> <li>It tests infrastructure before running it, and enables me to see and keep changes up to date.</li> <li>It runs from the same CLI I do most of my CM work from.</li> </ul></div></div></div><a class="css-1srb7t4">See more</a></div><div class="css-uw1ldh"><div class="css-4gnhqq"><div class="css-xkasvz"><div class="css-atv6j6"><div class="css-1m8tyev"><div class="lazyload-wrapper"><div class="lazyload-placeholder"></div></div></div></div><div class="css-1vf0ygt"><div class="css-utnqcw"><div>Sung Won Chung</div></div><div class="css-ds0hbm"><a href="/sungchun12/decisions/103080800236049641" class="css-nil"><time>Nov 4, 2019</time> <!-- -->| 31 upvotes 路 1M views</a></div></div></div></div><div class="css-nil"><div class="css-dg4ww9"><svg xmlns="http://www.w3.org/2000/svg" width="21" height="21" viewBox="0 0 21 21"><g fill="none"><path fill="#068DFE" d="M20.918 19.017l-1.442-4.195a10.3 10.3 0 0 0 1.062-4.537 10.208 10.208 0 0 0-2.949-7.207A10.199 10.199 0 0 0 10.436 0a10.23 10.23 0 0 0-7.428 3.006A10.228 10.228 0 0 0 0 10.437a10.199 10.199 0 0 0 3.077 7.153 10.207 10.207 0 0 0 7.191 2.95h.016a10.3 10.3 0 0 0 4.537-1.063l4.195 1.442a1.485 1.485 0 0 0 1.543-.357c.408-.408.545-1 .358-1.544z"></path><path fill="#FFF" d="M9.644 14.658a.923.923 0 0 1-.715.342.93.93 0 0 1-.71-.338l-1.98-2.36a1.044 1.044 0 0 1 .08-1.418.914.914 0 0 1 1.342.086l1.24 1.478 4.444-5.117a.914.914 0 0 1 1.342-.072c.39.372.42 1.006.068 1.418l-5.111 5.981z"></path></g></svg><div class="css-z9ms26">Chose</div><a href="/terraform" class="css-1pwtf47"><span title="Terraform" class="css-t68yd0 service"><img src="https://img.stackshare.io/service/1276/og-image-8b3e4f7d.png" alt="Terraform" class="css-1rz3855"/></span><span class="css-i6njnm">Terraform</span></a><div class="css-6uh2e7">over</div><a href="/google-cloud-deployment-manager" class="css-1pwtf47"><span title="Google Cloud Deployment Manager" class="css-t68yd0 service"><img src="https://img.stackshare.io/service/6810/deployment-manager-3.png" alt="Google Cloud Deployment Manager" class="css-1rz3855"/></span><span class="css-i6njnm">Google Cloud Deployment Manager</span></a><a href="/python" class="css-1pwtf47"><span title="Python" class="css-t68yd0 service"><img src="https://img.stackshare.io/service/993/pUBY5pVj.png" alt="Python" class="css-1rz3855"/></span><span class="css-i6njnm">Python</span></a><div class="css-6uh2e7">in</div><a itemscope="" itemType="http://schema.org/Organization" itemProp="url" href="/sungchun12/my-stack" target="_blank" class="css-1j2w1cg"><svg class="css-lnzci0" width="24" height="24" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><defs><path d="M2.4 0h19.2A2.4 2.4 0 0 1 24 2.4V17H0V2.4A2.4 2.4 0 0 1 2.4 0z" id="path-1"></path><path d="M0 0h24v4.6A2.4 2.4 0 0 1 21.6 7H2.4A2.4 2.4 0 0 1 0 4.6V0z" id="path-3"></path></defs><g id="Page-1" fill="none" fill-rule="evenodd"><g id="default-stack-icon"><g id="Group"><g id="b-link" fill="#333" fill-rule="nonzero"><path d="M2.4 0h19.2A2.4 2.4 0 0 1 24 2.4V17H0V2.4A2.4 2.4 0 0 1 2.4 0z" id="b"></path></g><g id="Clipped"><mask id="mask-2" fill="#fff"><use xlink:href="#path-1"></use></mask><path d="M2.704 1.967c0-.14.11-.253.249-.253h1.53c.138 0 .25.11.25.253v1.552a.25.25 0 0 1-.25.252h-1.53a.249.249 0 0 1-.249-.252V1.967zm0 3.428c0-.14.11-.252.249-.252h1.53c.138 0 .25.11.25.252v1.553a.25.25 0 0 1-.25.252h-1.53a.249.249 0 0 1-.249-.252V5.395zm0 3.429c0-.14.11-.253.249-.253h1.53a.25.25 0 0 1 .25.253v1.552a.25.25 0 0 1-.25.253h-1.53a.249.249 0 0 1-.249-.253V8.824zm0 3.428c0-.14.11-.252.249-.252h1.53c.138 0 .25.11.25.252v1.553a.25.25 0 0 1-.25.252h-1.53a.249.249 0 0 1-.249-.252v-1.553zM10.14 1.967c0-.14.11-.253.25-.253h1.53c.138 0 .249.11.249.253v1.552c0 .14-.109.252-.249.252h-1.53a.249.249 0 0 1-.25-.252V1.967zm0 3.428c0-.14.11-.252.25-.252h1.53c.138 0 .249.11.249.252v1.553c0 .14-.109.252-.249.252h-1.53a.249.249 0 0 1-.25-.252V5.395zm0 3.429c0-.14.11-.253.25-.253h1.53a.25.25 0 0 1 .249.253v1.552a.25.25 0 0 1-.249.253h-1.53a.249.249 0 0 1-.25-.253V8.824zm0 3.428c0-.14.11-.252.25-.252h1.53c.138 0 .249.11.249.252v1.553c0 .14-.109.252-.249.252h-1.53a.249.249 0 0 1-.25-.252v-1.553zM6.423 1.967a.25.25 0 0 1 .248-.253h1.531a.25.25 0 0 1 .249.253v1.552a.25.25 0 0 1-.249.252h-1.53a.249.249 0 0 1-.25-.252V1.967h.001zm0 3.428c0-.14.109-.252.248-.252h1.531a.25.25 0 0 1 .249.252v1.553a.25.25 0 0 1-.249.252h-1.53a.249.249 0 0 1-.25-.252V5.395h.001zm0 3.429a.25.25 0 0 1 .248-.253h1.531a.25.25 0 0 1 .249.253v1.552a.25.25 0 0 1-.249.253h-1.53a.249.249 0 0 1-.25-.253V8.824h.001zm0 3.428c0-.14.109-.252.248-.252h1.531a.25.25 0 0 1 .249.252v1.553a.25.25 0 0 1-.249.252h-1.53a.249.249 0 0 1-.25-.252v-1.553h.001zM13.86 1.967c0-.14.108-.253.248-.253h1.53c.138 0 .25.11.25.253v1.552a.25.25 0 0 1-.25.252h-1.53a.249.249 0 0 1-.249-.252V1.967h.001zm0 3.428c0-.14.108-.252.248-.252h1.53c.138 0 .25.11.25.252v1.553a.25.25 0 0 1-.25.252h-1.53a.249.249 0 0 1-.249-.252V5.395h.001zm0 3.429c0-.14.108-.253.248-.253h1.53a.25.25 0 0 1 .25.253v1.552a.25.25 0 0 1-.25.253h-1.53a.249.249 0 0 1-.249-.253V8.824h.001zm3.717-6.857c0-.14.11-.253.25-.253h1.53a.25.25 0 0 1 .249.253v1.552a.25.25 0 0 1-.25.252h-1.53a.249.249 0 0 1-.249-.252V1.967zm0 3.428c0-.14.11-.252.25-.252h1.53a.25.25 0 0 1 .249.252v1.553a.25.25 0 0 1-.25.252h-1.53a.249.249 0 0 1-.249-.252V5.395zm0 3.429c0-.14.11-.253.25-.253h1.53a.25.25 0 0 1 .249.253v1.552a.25.25 0 0 1-.25.253h-1.53a.249.249 0 0 1-.249-.253V8.824z" id="Shape" fill="#919191" fill-rule="nonzero" opacity=".404" mask="url(#mask-2)"></path></g></g><g id="d-link" transform="translate(0 17)" fill="#FFF" fill-rule="nonzero"><path d="M0 0h24v4.6A2.4 2.4 0 0 1 21.6 7H2.4A2.4 2.4 0 0 1 0 4.6V0z" id="d"></path></g><g id="Clipped" transform="translate(0 17)"><mask id="mask-4" fill="#fff"><use xlink:href="#path-3"></use></mask><rect id="Rectangle-path" fill="#E5E5E5" fill-rule="nonzero" mask="url(#mask-4)" x="5.408" y="2" width="13.521" height="1.717" rx=".859"></rect></g></g></g></svg><div itemProp="name" class="css-1b2ktnx">My Stack</div></a></div><div class="css-1dp4k20"><div class="css-ztg526"><p><strong>Context</strong>: I wanted to create an end to end IoT data pipeline simulation in <span class="tool">Google Cloud IoT Core</span> and other GCP services. I never touched <span class="tool">Terraform</span> meaningfully until working on this project, and it's one of the best explorations in my development career. The documentation and syntax is incredibly human-readable and friendly. I'm used to building infrastructure through the google apis via <span class="tool">Python</span> , but I'm so glad past Sung did not make that decision. I was tempted to use <span class="tool">Google Cloud Deployment Manager</span>, but the templates were a bit convoluted by first impression. I'm glad past Sung did not make this decision either.</p> <p><strong>Solution</strong>: Leveraging <span class="tool">Google Cloud Build</span> <span class="tool">Google Cloud Run</span> <span class="tool">Google Cloud Bigtable</span> <span class="tool">Google BigQuery</span> <span class="tool">Google Cloud Storage</span> <span class="tool">Google Compute Engine</span> along with some other fun tools, I can deploy over 40 GCP resources using Terraform!</p> <p><strong>Check Out My Architecture</strong>: <a href="https://github.com/sungchun12/iot-python-webapp/blob/master/documentation/architecture-drawio.png" rel="nofollow noopener" target="_blank">CLICK ME</a></p> <p>Check out the <span class="tool">GitHub</span> repo attached</p></div></div></div><a class="css-1srb7t4">See more</a></div><div class="css-gyrv08"></div><div class="css-n746ki"></div></div></div><div class="css-5k0ecd"><div style="padding-top:0;padding-bottom:0" class="css-1cuq2n9"><svg class="css-1cl6o07" xmlns="http://www.w3.org/2000/svg" width="123" height="70" viewBox="0 0 123 70"><g fill="none" fill-rule="evenodd"><g fill="#008FF9" stroke="#008FF9" opacity=".74"><g stroke-width="2.207" opacity=".413"><path d="M62.27 24.009c6.068 0 11.004-4.937 11.004-11.005C73.274 6.937 68.338 2 62.27 2S51.266 6.937 51.266 13.004c0 6.068 4.936 11.005 11.004 11.005zm0-19.368c4.612 0 8.363 3.752 8.363 8.363 0 4.612-3.751 8.364-8.363 8.364-4.611 0-8.363-3.752-8.363-8.364 0-4.611 3.752-8.363 8.363-8.363zm-.579 24.58c-11.177 0-20.271 9.28-20.271 20.689 0 .73.58 1.32 1.294 1.32.714 0 1.294-.59 1.294-1.32 0-9.951 7.932-18.047 17.683-18.047 9.75 0 17.683 8.096 17.683 18.047 0 .73.58 1.32 1.294 1.32.714 0 1.294-.59 1.294-1.32 0-11.407-9.093-20.688-20.271-20.688z" opacity=".502"></path></g><g opacity=".266"><path stroke-width="1.927" d="M33.506 27.484c-5.323 0-9.653-4.33-9.653-9.653s4.33-9.653 9.653-9.653c5.322 0 9.653 4.33 9.653 9.653 0 5.322-4.33 9.653-9.653 9.653zm0-16.99c-4.045 0-7.336 3.292-7.336 7.337s3.29 7.336 7.336 7.336c4.045 0 7.336-3.291 7.336-7.336s-3.291-7.336-7.336-7.336z" opacity=".502"></path><path stroke-width="1.986" d="M42.973 33.722c9.802 2.263 15.898 12.243 13.588 22.246a1.176 1.176 0 0 1-1.402.896 1.176 1.176 0 0 1-.867-1.42c2.015-8.726-3.303-17.432-11.853-19.406-8.55-1.974-17.146 3.52-19.161 12.246a1.177 1.177 0 0 1-1.402.896 1.176 1.176 0 0 1-.867-1.42c2.31-10.003 12.162-16.3 21.964-14.038z" opacity=".502"></path></g><g opacity=".266"><path stroke-width="1.927" d="M90.263 27.484c5.323 0 9.653-4.33 9.653-9.653s-4.33-9.653-9.653-9.653c-5.322 0-9.653 4.33-9.653 9.653 0 5.322 4.33 9.653 9.653 9.653zm0-16.99c4.045 0 7.337 3.292 7.337 7.337s-3.292 7.336-7.337 7.336-7.336-3.291-7.336-7.336 3.291-7.336 7.336-7.336z" opacity=".502"></path><path stroke-width="1.986" d="M80.217 33.722c-9.802 2.263-15.898 12.243-13.588 22.246.147.64.775 1.041 1.402.896a1.176 1.176 0 0 0 .867-1.42c-2.015-8.726 3.303-17.432 11.853-19.406 8.55-1.974 17.146 3.52 19.161 12.246.148.64.776 1.041 1.402.896a1.176 1.176 0 0 0 .867-1.42c-2.31-10.003-12.162-16.3-21.964-14.038z" opacity=".502"></path></g><g stroke-width="1.413" opacity=".184"><path d="M111.547 31.915a7.05 7.05 0 0 0 7.042-7.042c0-3.884-3.159-7.043-7.042-7.043-3.885 0-7.043 3.16-7.043 7.043s3.16 7.042 7.043 7.042zm0-12.395a5.358 5.358 0 0 1 5.352 5.353c0 2.951-2.4 5.352-5.352 5.352a5.358 5.358 0 0 1-5.353-5.352 5.359 5.359 0 0 1 5.353-5.353zm-6.725 21.023a.815.815 0 0 1-1.119.139.75.75 0 0 1-.144-1.08c2.39-2.98 6.001-4.69 9.906-4.69 2.508 0 4.927.712 6.997 2.06a.753.753 0 0 1 .215 1.068.818.818 0 0 1-1.109.207 11.152 11.152 0 0 0-6.103-1.796c-3.406 0-6.557 1.492-8.642 4.092z" opacity=".502"></path></g><g stroke-width="1.413" opacity=".177"><path d="M10.871 31.915a7.05 7.05 0 0 1-7.042-7.042c0-3.884 3.159-7.043 7.042-7.043 3.885 0 7.043 3.16 7.043 7.043s-3.16 7.042-7.043 7.042zm0-12.395a5.358 5.358 0 0 0-5.352 5.353c0 2.951 2.4 5.352 5.352 5.352 2.952 0 5.353-2.4 5.353-5.352a5.359 5.359 0 0 0-5.353-5.353zM3.036 40.543a.818.818 0 0 1-1.121.139.751.751 0 0 1-.144-1.08c2.39-2.98 6.002-4.69 9.907-4.69 2.507 0 4.927.712 6.996 2.06a.751.751 0 0 1 .215 1.068.818.818 0 0 1-1.109.207 11.147 11.147 0 0 0-6.102-1.797c-3.407 0-6.557 1.492-8.643 4.092z" opacity=".502"></path></g></g><g><path fill="#008FF9" stroke="#008FF9" stroke-width=".842" d="M61.047 16.51c-6.44 3.802-13.035 6.6-20.164 8.553a2.453 2.453 0 0 0-1.302.88 2.452 2.452 0 0 0-.504 1.487v9.447c0 11.603 5.26 19.355 10.029 24.121.827.81 1.69 1.57 2.569 2.274 2.796 2.241 5.735 3.912 7.985 4.731 1.047.382 1.953.58 2.636.58.684 0 1.59-.198 2.637-.58 2.19-.797 5.033-2.401 7.762-4.554a34.855 34.855 0 0 0 2.813-2.472c4.57-4.487 10.007-12.303 10.007-24.1V27.43c0-.603-.16-1.098-.46-1.493-.297-.388-.736-.684-1.346-.874-6.932-1.899-13.906-4.857-20.166-8.553a2.454 2.454 0 0 0-2.495 0z"></path><path fill="#FFF" stroke="#008FF9" stroke-width=".605" d="M62.079 18.257c-6.664 3.935-13.492 6.82-20.974 8.945v9.675c0 10.19 4.31 17.217 8.465 21.7V43.259c0-.483.197-.922.515-1.24a1.75 1.75 0 0 1 1.24-.514h2.21v-1.447c0-2.426.97-4.627 2.538-6.222 1.566-1.591 3.727-2.579 6.111-2.579a8.55 8.55 0 0 1 6.112 2.58 8.863 8.863 0 0 1 2.539 6.227v1.441h2.43c.484 0 .923.197 1.24.515.318.317.515.756.515 1.24v15.31c4.065-4.333 8.465-11.397 8.465-21.694l-.092-9.795-1.11-.31c-6.809-1.951-13.627-4.887-20.204-8.515zm.105 15.133c-1.81 0-3.451.748-4.64 1.956a6.7 6.7 0 0 0-1.921 4.71v1.448h13.123v-1.447a6.697 6.697 0 0 0-1.922-4.711 6.491 6.491 0 0 0-4.64-1.956z"></path><path fill="#FFF" d="M83.182 36.877c0 9.758-3.988 16.585-7.86 20.916V43.258a2.059 2.059 0 0 0-2.056-2.056h-2.129v-1.139c0-5.021-4.014-9.11-8.953-9.11-4.938 0-8.952 4.089-8.952 9.104v1.145h-1.908a2.059 2.059 0 0 0-2.056 2.056v14.535a4.32 4.32 0 0 1-.11-.122c-3.837-4.336-7.75-11.129-7.75-20.794V27.43c0-.055.037-.103.09-.118 7.331-2.009 14.114-4.885 20.735-8.794.02-.012.04-.017.062-.017s.043.005.062.017c6.437 3.8 13.607 6.84 20.735 8.794.053.015.09.063.09.118v9.447z"></path><path fill="#FFF" d="M67.197 57.374c-.6 0-1.1-.413-1.212-.96 0 0-.032-.23 0-.463.112-.546.613-.96 1.211-.96.681 0 1.235.535 1.235 1.192 0 .657-.554 1.191-1.235 1.191m-10.759-4.22c-.68 0-1.234-.534-1.234-1.19 0-.658.553-1.192 1.234-1.192.681 0 1.235.534 1.235 1.191s-.554 1.192-1.235 1.192m9.539-5.687v-.008c.112-.546.612-.96 1.21-.96.681 0 1.235.534 1.235 1.192 0 .657-.554 1.191-1.234 1.191-.6 0-1.1-.413-1.211-.96-.028-.21 0-.455 0-.455m1.22 6.446c-1.07 0-1.972.69-2.256 1.635h-1.393l-2.175-3.612v-.006l2.172-3.605h1.386c.285.944 1.187 1.634 2.257 1.634 1.297 0 2.35-1.016 2.35-2.268 0-1.253-1.053-2.269-2.35-2.269-1.07 0-1.972.69-2.257 1.634h-2.113l-.021-.012-2.56 4.252-.02.032h-1.521c-.285-.944-1.187-1.634-2.257-1.634-1.297 0-2.35 1.016-2.35 2.268 0 1.253 1.053 2.268 2.35 2.268 1.07 0 1.972-.69 2.257-1.634h1.555l2.546 4.227.011-.007h2.134c.284.944 1.187 1.634 2.256 1.634 1.298 0 2.35-1.016 2.35-2.268 0-1.253-1.052-2.269-2.35-2.269m1.246-12.712H55.925v-1.145c0-3.511 2.806-6.364 6.26-6.364 3.452 0 6.258 2.853 6.258 6.364v1.145z"></path></g></g></svg><div class="css-172fe00">Get Advice from developers at your company using StackShare Enterprise.<!-- --> <a href="/manage-companies/enterprise" class="css-1i2jin4">Sign up for StackShare Enterprise.</a></div><a href="/enterprise" class="css-1f94cd7">Learn More</a></div></div><div id="pros" style="pointer-events:none;grid-column:span 3;display:block;height:182px;margin-top:-182px"></div><div style="border-bottom:0;padding-bottom:0" data-notes="index 0 num 3 offset 0" class="css-3vlw85"><div class="css-f8hv9w"><span>Pros of Ansible</span></div></div><div style="border-bottom:0;padding-bottom:0" data-notes="index 1 num 3 offset 0" class="css-3vlw85"><div class="css-f8hv9w"><span>Pros of Terraform</span></div></div><div style="border-right:0;border-bottom:0;padding-bottom:0" data-notes="index 2 num 3 offset 0" class="css-3vlw85"></div><div style="border-bottom:0;padding-bottom:0" data-notes="index 0 num 3 offset 0" class="css-3vlw85"><div class="css-nil"><div class="css-1v4wqws"><div class="css-nil"><div class="css-uxqild"><h2 hidden="" class="css-nil">Pros of Ansible</h2><ul class="css-7c9av6"><li class="css-6nrkpz"><div class="css-1mlbi0l"><div class="css-1cda8k4"><div class="css-2an9kq"><svg style="margin-top:3px;margin-bottom:3px" xmlns="http://www.w3.org/2000/svg" width="10" height="8" viewBox="0 0 10 8"><path fill="#565656" fill-rule="evenodd" d="M5 0l5 8H0z"></path></svg><span class="css-5x5cr6">282</span></div></div><span class="css-rsz8c">Agentless</span></div></li><li class="css-6nrkpz"><div class="css-1mlbi0l"><div class="css-1cda8k4"><div class="css-2an9kq"><svg style="margin-top:3px;margin-bottom:3px" xmlns="http://www.w3.org/2000/svg" width="10" height="8" viewBox="0 0 10 8"><path fill="#565656" fill-rule="evenodd" d="M5 0l5 8H0z"></path></svg><span class="css-5x5cr6">208</span></div></div><span class="css-rsz8c">Great configuration </span></div></li><li class="css-6nrkpz"><div class="css-1mlbi0l"><div class="css-1cda8k4"><div class="css-2an9kq"><svg style="margin-top:3px;margin-bottom:3px" xmlns="http://www.w3.org/2000/svg" width="10" height="8" viewBox="0 0 10 8"><path fill="#565656" fill-rule="evenodd" d="M5 0l5 8H0z"></path></svg><span class="css-5x5cr6">197</span></div></div><span class="css-rsz8c">Simple</span></div></li><li class="css-6nrkpz"><div class="css-1mlbi0l"><div class="css-1cda8k4"><div class="css-2an9kq"><svg style="margin-top:3px;margin-bottom:3px" xmlns="http://www.w3.org/2000/svg" width="10" height="8" viewBox="0 0 10 8"><path fill="#565656" fill-rule="evenodd" d="M5 0l5 8H0z"></path></svg><span class="css-5x5cr6">175</span></div></div><span class="css-rsz8c">Powerful</span></div></li><li class="css-6nrkpz"><div class="css-1mlbi0l"><div class="css-1cda8k4"><div class="css-2an9kq"><svg style="margin-top:3px;margin-bottom:3px" xmlns="http://www.w3.org/2000/svg" width="10" height="8" viewBox="0 0 10 8"><path fill="#565656" fill-rule="evenodd" d="M5 0l5 8H0z"></path></svg><span class="css-5x5cr6">153</span></div></div><span class="css-rsz8c">Easy to learn</span></div></li><li class="css-6nrkpz"><div class="css-1mlbi0l"><div class="css-1cda8k4"><div class="css-2an9kq"><svg style="margin-top:3px;margin-bottom:3px" xmlns="http://www.w3.org/2000/svg" width="10" height="8" viewBox="0 0 10 8"><path fill="#565656" fill-rule="evenodd" d="M5 0l5 8H0z"></path></svg><span class="css-5x5cr6">67</span></div></div><span class="css-rsz8c">Flexible</span></div></li><li class="css-6nrkpz"><div class="css-1mlbi0l"><div class="css-1cda8k4"><div class="css-2an9kq"><svg style="margin-top:3px;margin-bottom:3px" xmlns="http://www.w3.org/2000/svg" width="10" height="8" viewBox="0 0 10 8"><path fill="#565656" fill-rule="evenodd" d="M5 0l5 8H0z"></path></svg><span class="css-5x5cr6">54</span></div></div><span class="css-rsz8c">Doesn&#x27;t get in the way of getting s--- done</span></div></li><li class="css-6nrkpz"><div class="css-1mlbi0l"><div class="css-1cda8k4"><div class="css-2an9kq"><svg style="margin-top:3px;margin-bottom:3px" xmlns="http://www.w3.org/2000/svg" width="10" height="8" viewBox="0 0 10 8"><path fill="#565656" fill-rule="evenodd" d="M5 0l5 8H0z"></path></svg><span class="css-5x5cr6">34</span></div></div><span class="css-rsz8c">Makes sense</span></div></li><li class="css-6nrkpz"><div class="css-1mlbi0l"><div class="css-1cda8k4"><div class="css-2an9kq"><svg style="margin-top:3px;margin-bottom:3px" xmlns="http://www.w3.org/2000/svg" width="10" height="8" viewBox="0 0 10 8"><path fill="#565656" fill-rule="evenodd" d="M5 0l5 8H0z"></path></svg><span class="css-5x5cr6">30</span></div></div><span class="css-rsz8c">Super efficient and flexible</span></div></li><li class="css-6nrkpz"><div class="css-1mlbi0l"><div class="css-1cda8k4"><div class="css-2an9kq"><svg style="margin-top:3px;margin-bottom:3px" xmlns="http://www.w3.org/2000/svg" width="10" height="8" viewBox="0 0 10 8"><path fill="#565656" fill-rule="evenodd" d="M5 0l5 8H0z"></path></svg><span class="css-5x5cr6">27</span></div></div><span class="css-rsz8c">Powerful </span></div></li><li class="css-6nrkpz"><div class="css-1mlbi0l"><div class="css-1cda8k4"><div class="css-2an9kq"><svg style="margin-top:3px;margin-bottom:3px" xmlns="http://www.w3.org/2000/svg" width="10" height="8" viewBox="0 0 10 8"><path fill="#565656" fill-rule="evenodd" d="M5 0l5 8H0z"></path></svg><span class="css-5x5cr6">11</span></div></div><span class="css-rsz8c">Dynamic Inventory</span></div></li><li class="css-6nrkpz"><div class="css-1mlbi0l"><div class="css-1cda8k4"><div class="css-2an9kq"><svg style="margin-top:3px;margin-bottom:3px" xmlns="http://www.w3.org/2000/svg" width="10" height="8" viewBox="0 0 10 8"><path fill="#565656" fill-rule="evenodd" d="M5 0l5 8H0z"></path></svg><span class="css-5x5cr6">9</span></div></div><span class="css-rsz8c">Backed by Red Hat</span></div></li><li class="css-6nrkpz"><div class="css-1mlbi0l"><div class="css-1cda8k4"><div class="css-2an9kq"><svg style="margin-top:3px;margin-bottom:3px" xmlns="http://www.w3.org/2000/svg" width="10" height="8" viewBox="0 0 10 8"><path fill="#565656" fill-rule="evenodd" d="M5 0l5 8H0z"></path></svg><span class="css-5x5cr6">7</span></div></div><span class="css-rsz8c">Works with AWS</span></div></li><li class="css-6nrkpz"><div class="css-1mlbi0l"><div class="css-1cda8k4"><div class="css-2an9kq"><svg style="margin-top:3px;margin-bottom:3px" xmlns="http://www.w3.org/2000/svg" width="10" height="8" viewBox="0 0 10 8"><path fill="#565656" fill-rule="evenodd" d="M5 0l5 8H0z"></path></svg><span class="css-5x5cr6">6</span></div></div><span class="css-rsz8c">Cloud Oriented</span></div></li><li class="css-6nrkpz"><div class="css-1mlbi0l"><div class="css-1cda8k4"><div class="css-2an9kq"><svg style="margin-top:3px;margin-bottom:3px" xmlns="http://www.w3.org/2000/svg" width="10" height="8" viewBox="0 0 10 8"><path fill="#565656" fill-rule="evenodd" d="M5 0l5 8H0z"></path></svg><span class="css-5x5cr6">6</span></div></div><span class="css-rsz8c">Easy to maintain</span></div></li><li class="css-6nrkpz"><div class="css-1mlbi0l"><div class="css-1cda8k4"><div class="css-2an9kq"><svg style="margin-top:3px;margin-bottom:3px" xmlns="http://www.w3.org/2000/svg" width="10" height="8" viewBox="0 0 10 8"><path fill="#565656" fill-rule="evenodd" d="M5 0l5 8H0z"></path></svg><span class="css-5x5cr6">4</span></div></div><span class="css-rsz8c">Because SSH</span></div></li><li class="css-6nrkpz"><div class="css-1mlbi0l"><div class="css-1cda8k4"><div class="css-2an9kq"><svg style="margin-top:3px;margin-bottom:3px" xmlns="http://www.w3.org/2000/svg" width="10" height="8" viewBox="0 0 10 8"><path fill="#565656" fill-rule="evenodd" d="M5 0l5 8H0z"></path></svg><span class="css-5x5cr6">4</span></div></div><span class="css-rsz8c">Multi language </span></div></li><li class="css-6nrkpz"><div class="css-1mlbi0l"><div class="css-1cda8k4"><div class="css-2an9kq"><svg style="margin-top:3px;margin-bottom:3px" xmlns="http://www.w3.org/2000/svg" width="10" height="8" viewBox="0 0 10 8"><path fill="#565656" fill-rule="evenodd" d="M5 0l5 8H0z"></path></svg><span class="css-5x5cr6">4</span></div></div><span class="css-rsz8c">Easy</span></div></li><li class="css-6nrkpz"><div class="css-1mlbi0l"><div class="css-1cda8k4"><div class="css-2an9kq"><svg style="margin-top:3px;margin-bottom:3px" xmlns="http://www.w3.org/2000/svg" width="10" height="8" viewBox="0 0 10 8"><path fill="#565656" fill-rule="evenodd" d="M5 0l5 8H0z"></path></svg><span class="css-5x5cr6">4</span></div></div><span class="css-rsz8c">Simple </span></div></li><li class="css-6nrkpz"><div class="css-1mlbi0l"><div class="css-1cda8k4"><div class="css-2an9kq"><svg style="margin-top:3px;margin-bottom:3px" xmlns="http://www.w3.org/2000/svg" width="10" height="8" viewBox="0 0 10 8"><path fill="#565656" fill-rule="evenodd" d="M5 0l5 8H0z"></path></svg><span class="css-5x5cr6">4</span></div></div><span class="css-rsz8c">Procedural or declarative, or both</span></div></li><li class="css-6nrkpz"><div class="css-1mlbi0l"><div class="css-1cda8k4"><div class="css-2an9kq"><svg style="margin-top:3px;margin-bottom:3px" xmlns="http://www.w3.org/2000/svg" width="10" height="8" viewBox="0 0 10 8"><path fill="#565656" fill-rule="evenodd" d="M5 0l5 8H0z"></path></svg><span class="css-5x5cr6">4</span></div></div><span class="css-rsz8c">Simple and powerful</span></div></li><li class="css-6nrkpz"><div class="css-1mlbi0l"><div class="css-1cda8k4"><div class="css-2an9kq"><svg style="margin-top:3px;margin-bottom:3px" xmlns="http://www.w3.org/2000/svg" width="10" height="8" viewBox="0 0 10 8"><path fill="#565656" fill-rule="evenodd" d="M5 0l5 8H0z"></path></svg><span class="css-5x5cr6">3</span></div></div><span class="css-rsz8c">Consistency</span></div></li><li class="css-6nrkpz"><div class="css-1mlbi0l"><div class="css-1cda8k4"><div class="css-2an9kq"><svg style="margin-top:3px;margin-bottom:3px" xmlns="http://www.w3.org/2000/svg" width="10" height="8" viewBox="0 0 10 8"><path fill="#565656" fill-rule="evenodd" d="M5 0l5 8H0z"></path></svg><span class="css-5x5cr6">3</span></div></div><span class="css-rsz8c">Vagrant provisioner</span></div></li><li class="css-6nrkpz"><div class="css-1mlbi0l"><div class="css-1cda8k4"><div class="css-2an9kq"><svg style="margin-top:3px;margin-bottom:3px" xmlns="http://www.w3.org/2000/svg" width="10" height="8" viewBox="0 0 10 8"><path fill="#565656" fill-rule="evenodd" d="M5 0l5 8H0z"></path></svg><span class="css-5x5cr6">2</span></div></div><span class="css-rsz8c">Debugging is simple</span></div></li><li class="css-6nrkpz"><div class="css-1mlbi0l"><div class="css-1cda8k4"><div class="css-2an9kq"><svg style="margin-top:3px;margin-bottom:3px" xmlns="http://www.w3.org/2000/svg" width="10" height="8" viewBox="0 0 10 8"><path fill="#565656" fill-rule="evenodd" d="M5 0l5 8H0z"></path></svg><span class="css-5x5cr6">2</span></div></div><span class="css-rsz8c">Fast as hell</span></div></li><li class="css-6nrkpz"><div class="css-1mlbi0l"><div class="css-1cda8k4"><div class="css-2an9kq"><svg style="margin-top:3px;margin-bottom:3px" xmlns="http://www.w3.org/2000/svg" width="10" height="8" viewBox="0 0 10 8"><path fill="#565656" fill-rule="evenodd" d="M5 0l5 8H0z"></path></svg><span class="css-5x5cr6">2</span></div></div><span class="css-rsz8c">Well-documented</span></div></li><li class="css-6nrkpz"><div class="css-1mlbi0l"><div class="css-1cda8k4"><div class="css-2an9kq"><svg style="margin-top:3px;margin-bottom:3px" xmlns="http://www.w3.org/2000/svg" width="10" height="8" viewBox="0 0 10 8"><path fill="#565656" fill-rule="evenodd" d="M5 0l5 8H0z"></path></svg><span class="css-5x5cr6">2</span></div></div><span class="css-rsz8c">Merge hash to get final configuration similar to hiera</span></div></li><li class="css-6nrkpz"><div class="css-1mlbi0l"><div class="css-1cda8k4"><div class="css-2an9kq"><svg style="margin-top:3px;margin-bottom:3px" xmlns="http://www.w3.org/2000/svg" width="10" height="8" viewBox="0 0 10 8"><path fill="#565656" fill-rule="evenodd" d="M5 0l5 8H0z"></path></svg><span class="css-5x5cr6">2</span></div></div><span class="css-rsz8c">Masterless</span></div></li><li class="css-6nrkpz"><div class="css-1mlbi0l"><div class="css-1cda8k4"><div class="css-2an9kq"><svg style="margin-top:3px;margin-bottom:3px" xmlns="http://www.w3.org/2000/svg" width="10" height="8" viewBox="0 0 10 8"><path fill="#565656" fill-rule="evenodd" d="M5 0l5 8H0z"></path></svg><span class="css-5x5cr6">1</span></div></div><span class="css-rsz8c">Manage any OS</span></div></li><li class="css-6nrkpz"><div class="css-1mlbi0l"><div class="css-1cda8k4"><div class="css-2an9kq"><svg style="margin-top:3px;margin-bottom:3px" xmlns="http://www.w3.org/2000/svg" width="10" height="8" viewBox="0 0 10 8"><path fill="#565656" fill-rule="evenodd" d="M5 0l5 8H0z"></path></svg><span class="css-5x5cr6">1</span></div></div><span class="css-rsz8c">Certified Content</span></div></li><li class="css-6nrkpz"><div class="css-1mlbi0l"><div class="css-1cda8k4"><div class="css-2an9kq"><svg style="margin-top:3px;margin-bottom:3px" xmlns="http://www.w3.org/2000/svg" width="10" height="8" viewBox="0 0 10 8"><path fill="#565656" fill-rule="evenodd" d="M5 0l5 8H0z"></path></svg><span class="css-5x5cr6">1</span></div></div><span class="css-rsz8c">Work on windows, but difficult to manage</span></div></li></ul></div></div></div></div></div><div style="border-bottom:0;padding-bottom:0" data-notes="index 1 num 3 offset 0" class="css-3vlw85"><div class="css-nil"><div class="css-1v4wqws"><div class="css-nil"><div class="css-uxqild"><h2 hidden="" class="css-nil">Pros of Terraform</h2><ul class="css-7c9av6"><li class="css-6nrkpz"><div class="css-1mlbi0l"><div class="css-1cda8k4"><div class="css-2an9kq"><svg style="margin-top:3px;margin-bottom:3px" xmlns="http://www.w3.org/2000/svg" width="10" height="8" viewBox="0 0 10 8"><path fill="#565656" fill-rule="evenodd" d="M5 0l5 8H0z"></path></svg><span class="css-5x5cr6">117</span></div></div><span class="css-rsz8c">Infrastructure as code</span></div></li><li class="css-6nrkpz"><div class="css-1mlbi0l"><div class="css-1cda8k4"><div class="css-2an9kq"><svg style="margin-top:3px;margin-bottom:3px" xmlns="http://www.w3.org/2000/svg" width="10" height="8" viewBox="0 0 10 8"><path fill="#565656" fill-rule="evenodd" d="M5 0l5 8H0z"></path></svg><span class="css-5x5cr6">73</span></div></div><span class="css-rsz8c">Declarative syntax</span></div></li><li class="css-6nrkpz"><div class="css-1mlbi0l"><div class="css-1cda8k4"><div class="css-2an9kq"><svg style="margin-top:3px;margin-bottom:3px" xmlns="http://www.w3.org/2000/svg" width="10" height="8" viewBox="0 0 10 8"><path fill="#565656" fill-rule="evenodd" d="M5 0l5 8H0z"></path></svg><span class="css-5x5cr6">44</span></div></div><span class="css-rsz8c">Planning</span></div></li><li class="css-6nrkpz"><div class="css-1mlbi0l"><div class="css-1cda8k4"><div class="css-2an9kq"><svg style="margin-top:3px;margin-bottom:3px" xmlns="http://www.w3.org/2000/svg" width="10" height="8" viewBox="0 0 10 8"><path fill="#565656" fill-rule="evenodd" d="M5 0l5 8H0z"></path></svg><span class="css-5x5cr6">28</span></div></div><span class="css-rsz8c">Simple</span></div></li><li class="css-6nrkpz"><div class="css-1mlbi0l"><div class="css-1cda8k4"><div class="css-2an9kq"><svg style="margin-top:3px;margin-bottom:3px" xmlns="http://www.w3.org/2000/svg" width="10" height="8" viewBox="0 0 10 8"><path fill="#565656" fill-rule="evenodd" d="M5 0l5 8H0z"></path></svg><span class="css-5x5cr6">24</span></div></div><span class="css-rsz8c">Parallelism</span></div></li><li class="css-6nrkpz"><div class="css-1mlbi0l"><div class="css-1cda8k4"><div class="css-2an9kq"><svg style="margin-top:3px;margin-bottom:3px" xmlns="http://www.w3.org/2000/svg" width="10" height="8" viewBox="0 0 10 8"><path fill="#565656" fill-rule="evenodd" d="M5 0l5 8H0z"></path></svg><span class="css-5x5cr6">8</span></div></div><span class="css-rsz8c">Well-documented</span></div></li><li class="css-6nrkpz"><div class="css-1mlbi0l"><div class="css-1cda8k4"><div class="css-2an9kq"><svg style="margin-top:3px;margin-bottom:3px" xmlns="http://www.w3.org/2000/svg" width="10" height="8" viewBox="0 0 10 8"><path fill="#565656" fill-rule="evenodd" d="M5 0l5 8H0z"></path></svg><span class="css-5x5cr6">7</span></div></div><span class="css-rsz8c">Cloud agnostic </span></div></li><li class="css-6nrkpz"><div class="css-1mlbi0l"><div class="css-1cda8k4"><div class="css-2an9kq"><svg style="margin-top:3px;margin-bottom:3px" xmlns="http://www.w3.org/2000/svg" width="10" height="8" viewBox="0 0 10 8"><path fill="#565656" fill-rule="evenodd" d="M5 0l5 8H0z"></path></svg><span class="css-5x5cr6">6</span></div></div><span class="css-rsz8c">It&#x27;s like coding your infrastructure in simple English</span></div></li><li class="css-6nrkpz"><div class="css-1mlbi0l"><div class="css-1cda8k4"><div class="css-2an9kq"><svg style="margin-top:3px;margin-bottom:3px" xmlns="http://www.w3.org/2000/svg" width="10" height="8" viewBox="0 0 10 8"><path fill="#565656" fill-rule="evenodd" d="M5 0l5 8H0z"></path></svg><span class="css-5x5cr6">5</span></div></div><span class="css-rsz8c">Platform agnostic</span></div></li><li class="css-6nrkpz"><div class="css-1mlbi0l"><div class="css-1cda8k4"><div class="css-2an9kq"><svg style="margin-top:3px;margin-bottom:3px" xmlns="http://www.w3.org/2000/svg" width="10" height="8" viewBox="0 0 10 8"><path fill="#565656" fill-rule="evenodd" d="M5 0l5 8H0z"></path></svg><span class="css-5x5cr6">5</span></div></div><span class="css-rsz8c">Immutable infrastructure</span></div></li><li class="css-6nrkpz"><div class="css-1mlbi0l"><div class="css-1cda8k4"><div class="css-2an9kq"><svg style="margin-top:3px;margin-bottom:3px" xmlns="http://www.w3.org/2000/svg" width="10" height="8" viewBox="0 0 10 8"><path fill="#565656" fill-rule="evenodd" d="M5 0l5 8H0z"></path></svg><span class="css-5x5cr6">4</span></div></div><span class="css-rsz8c">Portability</span></div></li><li class="css-6nrkpz"><div class="css-1mlbi0l"><div class="css-1cda8k4"><div class="css-2an9kq"><svg style="margin-top:3px;margin-bottom:3px" xmlns="http://www.w3.org/2000/svg" width="10" height="8" viewBox="0 0 10 8"><path fill="#565656" fill-rule="evenodd" d="M5 0l5 8H0z"></path></svg><span class="css-5x5cr6">4</span></div></div><span class="css-rsz8c">Automation </span></div></li><li class="css-6nrkpz"><div class="css-1mlbi0l"><div class="css-1cda8k4"><div class="css-2an9kq"><svg style="margin-top:3px;margin-bottom:3px" xmlns="http://www.w3.org/2000/svg" width="10" height="8" viewBox="0 0 10 8"><path fill="#565656" fill-rule="evenodd" d="M5 0l5 8H0z"></path></svg><span class="css-5x5cr6">4</span></div></div><span class="css-rsz8c">Automates infrastructure deployments</span></div></li><li class="css-6nrkpz"><div class="css-1mlbi0l"><div class="css-1cda8k4"><div class="css-2an9kq"><svg style="margin-top:3px;margin-bottom:3px" xmlns="http://www.w3.org/2000/svg" width="10" height="8" viewBox="0 0 10 8"><path fill="#565656" fill-rule="evenodd" d="M5 0l5 8H0z"></path></svg><span class="css-5x5cr6">4</span></div></div><span class="css-rsz8c">Extendable</span></div></li><li class="css-6nrkpz"><div class="css-1mlbi0l"><div class="css-1cda8k4"><div class="css-2an9kq"><svg style="margin-top:3px;margin-bottom:3px" xmlns="http://www.w3.org/2000/svg" width="10" height="8" viewBox="0 0 10 8"><path fill="#565656" fill-rule="evenodd" d="M5 0l5 8H0z"></path></svg><span class="css-5x5cr6">2</span></div></div><span class="css-rsz8c">Scales to hundreds of hosts</span></div></li><li class="css-6nrkpz"><div class="css-1mlbi0l"><div class="css-1cda8k4"><div class="css-2an9kq"><svg style="margin-top:3px;margin-bottom:3px" xmlns="http://www.w3.org/2000/svg" width="10" height="8" viewBox="0 0 10 8"><path fill="#565656" fill-rule="evenodd" d="M5 0l5 8H0z"></path></svg><span class="css-5x5cr6">2</span></div></div><span class="css-rsz8c">Lightweight</span></div></li></ul></div></div></div></div></div><div style="border-right:0;border-bottom:0;padding-bottom:0" data-notes="index 2 num 3 offset 0" class="css-3vlw85"></div><div class="css-5k0ecd"><div class="css-p8n7zj"><div class="css-1uq0dwx"><svg class="css-1p6gwer" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 76 76"><g fill="none"><path fill="#068DFE" d="M73.548 63.742V23.29a6.137 6.137 0 0 0-6.129-6.129h-3.677C63.742 7.698 56.044 0 46.58 0c-9.464 0-17.162 7.698-17.162 17.161H8.581a6.136 6.136 0 0 0-6.13 6.13v40.45H0v6.13C0 73.251 2.75 76 6.129 76h63.742C73.251 76 76 73.25 76 69.871v-6.13h-2.452zm-6.129-44.13a3.682 3.682 0 0 1 3.678 3.678v40.452h-2.452V24.516c0-1.352-1.1-2.451-2.451-2.451h-3.175a17.04 17.04 0 0 0 .527-2.452h3.873zm-34.836-6.955l13.01 5.421 4.456 13.363c-1.115.27-2.272.43-3.468.43-8.112 0-14.71-6.598-14.71-14.71 0-1.571.254-3.084.712-4.504zm19.794 18.019l-4.394-13.184 9.818-9.819a14.63 14.63 0 0 1 3.49 9.488c0 6.053-3.678 11.26-8.914 13.515zM46.581 2.452a14.64 14.64 0 0 1 9.489 3.487l-9.775 9.774-12.762-5.316c2.453-4.714 7.376-7.945 13.048-7.945zM4.903 23.29a3.682 3.682 0 0 1 3.678-3.677h21.035c.12.837.289 1.657.526 2.452H9.806a2.454 2.454 0 0 0-2.451 2.451v39.226H4.903V23.29zm68.645 46.581a3.682 3.682 0 0 1-3.677 3.677H6.129a3.682 3.682 0 0 1-3.677-3.677v-3.677h25.254a9.525 9.525 0 0 0 6.407 2.451h7.775c2.39 0 4.645-.867 6.407-2.451h15.447v-2.452H47.299l-.36.36a7.096 7.096 0 0 1-5.052 2.092h-7.775a7.098 7.098 0 0 1-5.053-2.093l-.358-.36H9.806V24.517H31.1c2.762 5.789 8.653 9.807 15.482 9.807 6.828 0 12.72-4.018 15.481-9.807h4.132v41.678h7.354v3.677z"></path><path fill="#068DFE" d="M60.286 51.286c-.76 0-1.468.227-2.057.613l-4.32-3.176c.11-.344.186-.702.186-1.08 0-2.008-1.666-3.643-3.714-3.643s-3.714 1.635-3.714 3.643c0 .418.086.813.219 1.187l-6.935 5.442A3.728 3.728 0 0 0 38 53.714a3.73 3.73 0 0 0-2.215.736l-5.339-3.491c.075-.285.125-.58.125-.888 0-2.008-1.666-3.642-3.714-3.642-2.047 0-3.714 1.634-3.714 3.642 0 .309.05.603.125.888l-5.339 3.491a3.722 3.722 0 0 0-2.215-.736c-2.047 0-3.714 1.635-3.714 3.643S13.667 61 15.714 61c2.048 0 3.715-1.635 3.715-3.643 0-.308-.051-.602-.126-.887l5.34-3.492c.62.457 1.381.736 2.214.736s1.595-.279 2.215-.736l5.339 3.492c-.075.285-.125.58-.125.887C34.286 59.365 35.952 61 38 61s3.714-1.635 3.714-3.643c0-.418-.086-.813-.219-1.187l6.935-5.442a3.728 3.728 0 0 0 4.008-.055l4.319 3.176c-.11.344-.186.702-.186 1.08 0 2.008 1.667 3.642 3.715 3.642 2.047 0 3.714-1.634 3.714-3.642 0-2.009-1.667-3.643-3.714-3.643zM15.714 58.57a1.229 1.229 0 0 1-1.238-1.214c0-.669.556-1.214 1.238-1.214.682 0 1.238.545 1.238 1.214 0 .669-.556 1.214-1.238 1.214zm11.143-7.285a1.229 1.229 0 0 1-1.238-1.215c0-.668.556-1.214 1.238-1.214.682 0 1.238.546 1.238 1.214 0 .67-.556 1.215-1.238 1.215zM38 58.57a1.229 1.229 0 0 1-1.238-1.214c0-.669.556-1.214 1.238-1.214.682 0 1.238.545 1.238 1.214 0 .669-.556 1.214-1.238 1.214zm12.381-9.714a1.229 1.229 0 0 1-1.238-1.214c0-.669.556-1.214 1.238-1.214.682 0 1.238.545 1.238 1.214 0 .669-.556 1.214-1.238 1.214zm9.905 7.286a1.229 1.229 0 0 1-1.238-1.214c0-.67.556-1.215 1.238-1.215a1.23 1.23 0 0 1 1.238 1.215c0 .668-.556 1.214-1.238 1.214z"></path><path fill="#E8F4FF" d="M32 27H12v17h20z"></path><path fill="#068DFE" d="M17 32h10v2H17zm0 5h10v2H17zm18 2h2v2h-2z"></path><path fill="#E8F4FF" d="M39 39h24v2H39z"></path></g></svg><h1 class="css-lr10t7">Sign up to add or upvote pros<span class="css-4yzqpf">Make informed product decisions</span></h1></div><button data-testid="signupFullAccessButton" class="css-st9eg3">Sign up now</button></div></div><div style="border-bottom:0;padding-bottom:0" data-notes="index 0 num 3 offset 0" class="css-3vlw85"><div class="css-f8hv9w"><span>Cons of Ansible</span></div></div><div style="border-bottom:0;padding-bottom:0" data-notes="index 1 num 3 offset 0" class="css-3vlw85"><div class="css-f8hv9w"><span>Cons of Terraform</span></div></div><div style="border-right:0;border-bottom:0;padding-bottom:0" data-notes="index 2 num 3 offset 0" class="css-3vlw85"></div><div style="border-bottom:0;padding-bottom:0" data-notes="index 0 num 3 offset 0" class="css-3vlw85"><div class="css-nil"><div class="css-1v4wqws"><div class="css-nil"><div class="css-uxqild"><h2 hidden="" class="css-nil">Cons of Ansible</h2><ul class="css-7c9av6"><li class="css-6nrkpz"><div class="css-1mlbi0l"><div class="css-1cda8k4"><div class="css-2an9kq"><svg style="margin-top:3px;margin-bottom:3px" xmlns="http://www.w3.org/2000/svg" width="10" height="8" viewBox="0 0 10 8"><path fill="#565656" fill-rule="evenodd" d="M5 0l5 8H0z"></path></svg><span class="css-5x5cr6">8</span></div></div><span class="css-rsz8c">Dangerous</span></div></li><li class="css-6nrkpz"><div class="css-1mlbi0l"><div class="css-1cda8k4"><div class="css-2an9kq"><svg style="margin-top:3px;margin-bottom:3px" xmlns="http://www.w3.org/2000/svg" width="10" height="8" viewBox="0 0 10 8"><path fill="#565656" fill-rule="evenodd" d="M5 0l5 8H0z"></path></svg><span class="css-5x5cr6">5</span></div></div><span class="css-rsz8c">Hard to install</span></div></li><li class="css-6nrkpz"><div class="css-1mlbi0l"><div class="css-1cda8k4"><div class="css-2an9kq"><svg style="margin-top:3px;margin-bottom:3px" xmlns="http://www.w3.org/2000/svg" width="10" height="8" viewBox="0 0 10 8"><path fill="#565656" fill-rule="evenodd" d="M5 0l5 8H0z"></path></svg><span class="css-5x5cr6">3</span></div></div><span class="css-rsz8c">Doesn&#x27;t Run on Windows</span></div></li><li class="css-6nrkpz"><div class="css-1mlbi0l"><div class="css-1cda8k4"><div class="css-2an9kq"><svg style="margin-top:3px;margin-bottom:3px" xmlns="http://www.w3.org/2000/svg" width="10" height="8" viewBox="0 0 10 8"><path fill="#565656" fill-rule="evenodd" d="M5 0l5 8H0z"></path></svg><span class="css-5x5cr6">3</span></div></div><span class="css-rsz8c">Bloated</span></div></li><li class="css-6nrkpz"><div class="css-1mlbi0l"><div class="css-1cda8k4"><div class="css-2an9kq"><svg style="margin-top:3px;margin-bottom:3px" xmlns="http://www.w3.org/2000/svg" width="10" height="8" viewBox="0 0 10 8"><path fill="#565656" fill-rule="evenodd" d="M5 0l5 8H0z"></path></svg><span class="css-5x5cr6">3</span></div></div><span class="css-rsz8c">Backward compatibility</span></div></li><li class="css-6nrkpz"><div class="css-1mlbi0l"><div class="css-1cda8k4"><div class="css-2an9kq"><svg style="margin-top:3px;margin-bottom:3px" xmlns="http://www.w3.org/2000/svg" width="10" height="8" viewBox="0 0 10 8"><path fill="#565656" fill-rule="evenodd" d="M5 0l5 8H0z"></path></svg><span class="css-5x5cr6">2</span></div></div><span class="css-rsz8c">No immutable infrastructure</span></div></li></ul></div></div></div></div></div><div style="border-bottom:0;padding-bottom:0" data-notes="index 1 num 3 offset 0" class="css-3vlw85"><div class="css-nil"><div class="css-1v4wqws"><div class="css-nil"><div class="css-uxqild"><h2 hidden="" class="css-nil">Cons of Terraform</h2><ul class="css-7c9av6"><li class="css-6nrkpz"><div class="css-1mlbi0l"><div class="css-1cda8k4"><div class="css-2an9kq"><svg style="margin-top:3px;margin-bottom:3px" xmlns="http://www.w3.org/2000/svg" width="10" height="8" viewBox="0 0 10 8"><path fill="#565656" fill-rule="evenodd" d="M5 0l5 8H0z"></path></svg><span class="css-5x5cr6">1</span></div></div><span class="css-rsz8c">Doesn&#x27;t have full support to GKE </span></div></li></ul></div></div></div></div></div><div style="border-right:0;border-bottom:0;padding-bottom:0" data-notes="index 2 num 3 offset 0" class="css-3vlw85"></div><div class="css-5k0ecd"><div class="css-p8n7zj"><div class="css-1uq0dwx"><svg class="css-1p6gwer" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 76 76"><g fill="none"><path fill="#068DFE" d="M73.548 63.742V23.29a6.137 6.137 0 0 0-6.129-6.129h-3.677C63.742 7.698 56.044 0 46.58 0c-9.464 0-17.162 7.698-17.162 17.161H8.581a6.136 6.136 0 0 0-6.13 6.13v40.45H0v6.13C0 73.251 2.75 76 6.129 76h63.742C73.251 76 76 73.25 76 69.871v-6.13h-2.452zm-6.129-44.13a3.682 3.682 0 0 1 3.678 3.678v40.452h-2.452V24.516c0-1.352-1.1-2.451-2.451-2.451h-3.175a17.04 17.04 0 0 0 .527-2.452h3.873zm-34.836-6.955l13.01 5.421 4.456 13.363c-1.115.27-2.272.43-3.468.43-8.112 0-14.71-6.598-14.71-14.71 0-1.571.254-3.084.712-4.504zm19.794 18.019l-4.394-13.184 9.818-9.819a14.63 14.63 0 0 1 3.49 9.488c0 6.053-3.678 11.26-8.914 13.515zM46.581 2.452a14.64 14.64 0 0 1 9.489 3.487l-9.775 9.774-12.762-5.316c2.453-4.714 7.376-7.945 13.048-7.945zM4.903 23.29a3.682 3.682 0 0 1 3.678-3.677h21.035c.12.837.289 1.657.526 2.452H9.806a2.454 2.454 0 0 0-2.451 2.451v39.226H4.903V23.29zm68.645 46.581a3.682 3.682 0 0 1-3.677 3.677H6.129a3.682 3.682 0 0 1-3.677-3.677v-3.677h25.254a9.525 9.525 0 0 0 6.407 2.451h7.775c2.39 0 4.645-.867 6.407-2.451h15.447v-2.452H47.299l-.36.36a7.096 7.096 0 0 1-5.052 2.092h-7.775a7.098 7.098 0 0 1-5.053-2.093l-.358-.36H9.806V24.517H31.1c2.762 5.789 8.653 9.807 15.482 9.807 6.828 0 12.72-4.018 15.481-9.807h4.132v41.678h7.354v3.677z"></path><path fill="#068DFE" d="M60.286 51.286c-.76 0-1.468.227-2.057.613l-4.32-3.176c.11-.344.186-.702.186-1.08 0-2.008-1.666-3.643-3.714-3.643s-3.714 1.635-3.714 3.643c0 .418.086.813.219 1.187l-6.935 5.442A3.728 3.728 0 0 0 38 53.714a3.73 3.73 0 0 0-2.215.736l-5.339-3.491c.075-.285.125-.58.125-.888 0-2.008-1.666-3.642-3.714-3.642-2.047 0-3.714 1.634-3.714 3.642 0 .309.05.603.125.888l-5.339 3.491a3.722 3.722 0 0 0-2.215-.736c-2.047 0-3.714 1.635-3.714 3.643S13.667 61 15.714 61c2.048 0 3.715-1.635 3.715-3.643 0-.308-.051-.602-.126-.887l5.34-3.492c.62.457 1.381.736 2.214.736s1.595-.279 2.215-.736l5.339 3.492c-.075.285-.125.58-.125.887C34.286 59.365 35.952 61 38 61s3.714-1.635 3.714-3.643c0-.418-.086-.813-.219-1.187l6.935-5.442a3.728 3.728 0 0 0 4.008-.055l4.319 3.176c-.11.344-.186.702-.186 1.08 0 2.008 1.667 3.642 3.715 3.642 2.047 0 3.714-1.634 3.714-3.642 0-2.009-1.667-3.643-3.714-3.643zM15.714 58.57a1.229 1.229 0 0 1-1.238-1.214c0-.669.556-1.214 1.238-1.214.682 0 1.238.545 1.238 1.214 0 .669-.556 1.214-1.238 1.214zm11.143-7.285a1.229 1.229 0 0 1-1.238-1.215c0-.668.556-1.214 1.238-1.214.682 0 1.238.546 1.238 1.214 0 .67-.556 1.215-1.238 1.215zM38 58.57a1.229 1.229 0 0 1-1.238-1.214c0-.669.556-1.214 1.238-1.214.682 0 1.238.545 1.238 1.214 0 .669-.556 1.214-1.238 1.214zm12.381-9.714a1.229 1.229 0 0 1-1.238-1.214c0-.669.556-1.214 1.238-1.214.682 0 1.238.545 1.238 1.214 0 .669-.556 1.214-1.238 1.214zm9.905 7.286a1.229 1.229 0 0 1-1.238-1.214c0-.67.556-1.215 1.238-1.215a1.23 1.23 0 0 1 1.238 1.215c0 .668-.556 1.214-1.238 1.214z"></path><path fill="#E8F4FF" d="M32 27H12v17h20z"></path><path fill="#068DFE" d="M17 32h10v2H17zm0 5h10v2H17zm18 2h2v2h-2z"></path><path fill="#E8F4FF" d="M39 39h24v2H39z"></path></g></svg><h1 class="css-lr10t7">Sign up to add or upvote cons<span class="css-4yzqpf">Make informed product decisions</span></h1></div><button data-testid="signupFullAccessButton" class="css-st9eg3">Sign up now</button></div></div><div id="stats" style="pointer-events:none;grid-column:span 3;display:block;height:182px;margin-top:-182px"></div><div data-notes="index 0 num 3 offset 0" class="css-3vlw85"><div class="css-acfjt6"><div class="css-w707sh"></div></div></div><div data-notes="index 1 num 3 offset 0" class="css-3vlw85"><div class="css-acfjt6"><div class="css-w707sh"></div></div></div><div style="border-right:0" data-notes="index 2 num 3 offset 0" class="css-3vlw85"></div><div data-notes="index 0 num 3 offset 0" class="css-3vlw85"><div class="css-14bxxd1"><a href="https://github.com/ansible/ansible" target="_blank" class="css-1hlwa6q"><svg class="css-f9zb2m" xmlns="http://www.w3.org/2000/svg" width="50" height="48" viewBox="0 0 50 48"><path fill="#161514" fill-rule="evenodd" d="M0 24.608C0 35.48 7.163 44.703 17.097 47.956c1.25.227 1.707-.533 1.707-1.185 0-.584-.022-2.132-.034-4.185-6.954 1.487-8.421-3.3-8.421-3.3-1.138-2.842-2.777-3.599-2.777-3.599-2.27-1.526.172-1.495.172-1.495 2.51.173 3.83 2.536 3.83 2.536 2.23 3.76 5.851 2.674 7.276 2.044.227-1.59.873-2.674 1.586-3.289-5.55-.62-11.387-2.733-11.387-12.162 0-2.686.974-4.884 2.574-6.603-.258-.622-1.116-3.125.245-6.512 0 0 2.098-.662 6.874 2.523 1.994-.547 4.133-.82 6.259-.83 2.124.01 4.262.283 6.258.83 4.773-3.185 6.868-2.523 6.868-2.523 1.365 3.387.507 5.89.25 6.512 1.603 1.72 2.57 3.917 2.57 6.603 0 9.454-5.846 11.534-11.414 12.143.896.76 1.696 2.26 1.696 4.557 0 3.289-.031 5.943-.031 6.75 0 .658.451 1.424 1.719 1.184C42.844 44.693 50 35.477 50 24.608 50 11.017 38.806 0 24.998 0 11.194 0 0 11.017 0 24.608z" opacity=".35"></path></svg><div class="css-1wdjt5z"><div class="css-w707sh"></div></div></a></div></div><div data-notes="index 1 num 3 offset 0" class="css-3vlw85"><div class="css-14bxxd1"><a href="https://github.com/hashicorp/terraform" target="_blank" class="css-1hlwa6q"><svg class="css-f9zb2m" xmlns="http://www.w3.org/2000/svg" width="50" height="48" viewBox="0 0 50 48"><path fill="#161514" fill-rule="evenodd" d="M0 24.608C0 35.48 7.163 44.703 17.097 47.956c1.25.227 1.707-.533 1.707-1.185 0-.584-.022-2.132-.034-4.185-6.954 1.487-8.421-3.3-8.421-3.3-1.138-2.842-2.777-3.599-2.777-3.599-2.27-1.526.172-1.495.172-1.495 2.51.173 3.83 2.536 3.83 2.536 2.23 3.76 5.851 2.674 7.276 2.044.227-1.59.873-2.674 1.586-3.289-5.55-.62-11.387-2.733-11.387-12.162 0-2.686.974-4.884 2.574-6.603-.258-.622-1.116-3.125.245-6.512 0 0 2.098-.662 6.874 2.523 1.994-.547 4.133-.82 6.259-.83 2.124.01 4.262.283 6.258.83 4.773-3.185 6.868-2.523 6.868-2.523 1.365 3.387.507 5.89.25 6.512 1.603 1.72 2.57 3.917 2.57 6.603 0 9.454-5.846 11.534-11.414 12.143.896.76 1.696 2.26 1.696 4.557 0 3.289-.031 5.943-.031 6.75 0 .658.451 1.424 1.719 1.184C42.844 44.693 50 35.477 50 24.608 50 11.017 38.806 0 24.998 0 11.194 0 0 11.017 0 24.608z" opacity=".35"></path></svg><div class="css-1wdjt5z"><div class="css-w707sh"></div></div></a></div></div><div style="border-right:0" data-notes="index 2 num 3 offset 0" class="css-3vlw85"></div><div id="description" style="pointer-events:none;grid-column:span 3;display:block;height:182px;margin-top:-182px"></div><div data-notes="index 0 num 3 offset 0" class="css-3vlw85"><div class="css-nil"><h2 class="css-i52n91">What is Ansible?</h2><div class="css-13sfqhu">Ansible is an IT automation tool. It can configure systems, deploy software, and orchestrate more advanced IT tasks such as continuous deployments or zero downtime rolling updates. Ansible鈥檚 goals are foremost those of simplicity and maximum ease of use.</div></div></div><div data-notes="index 1 num 3 offset 0" class="css-3vlw85"><div class="css-nil"><h2 class="css-i52n91">What is Terraform?</h2><div class="css-13sfqhu">With Terraform, you describe your complete infrastructure as code, even as it spans multiple service providers. Your servers may come from AWS, your DNS may come from CloudFlare, and your database may come from Heroku. Terraform will build all these resources across all these providers in parallel.</div></div></div><div style="border-right:0" data-notes="index 2 num 3 offset 0" class="css-3vlw85"></div><div class="css-5k0ecd"><div data-testid="getAdvice" class="css-1ke07jm"><div class="css-1di6wpo"><div class="lazyload-wrapper"><div class="lazyload-placeholder"></div></div><h1 class="css-lr10t7">Need advice about which tool to choose?<span class="css-4yzqpf">Ask the StackShare community!</span></h1></div><button class="css-st9eg3">Get Advice</button></div></div><div class="css-5k0ecd"><div id="jobs" style="pointer-events:none;grid-column:span 3;display:block;height:182px;margin-top:-182px"></div><div class="css-f8hv9w"><span>Jobs that mention Ansible and Terraform as a desired skillset</span></div><div class="css-i5u9v5"><div class="css-1ewdw7x"><div class="css-ih8ay1"><a href="/companies/cbre" title="CBRE&#x27;s company profile"><div class="lazyload-wrapper"><div class="lazyload-placeholder"></div></div></a><div class="css-17niv7d"><a href="https://careers.cbre.com/careers/JobDetail/Senior-Systems-Engineer/80671" title="Senior Systems Engineer" target="_blank" data-testid="jobsTitle" rel="noreferrer noopener nofollow">Senior Systems Engineer</a></div><a href="/companies/cbre" title="CBRE&#x27;s company profile" class="css-6mpj06">CBRE</a><div class="css-nio1yx"><svg xmlns="http://www.w3.org/2000/svg" width="11" height="14" viewBox="0 0 11 14"><g fill="none" fill-rule="evenodd" stroke="#49A8F9"><path d="M4.5 12.205l.013.017c.492.612 1.243.612 1.738-.017a25.074 25.074 0 0 0 1.789-2.37c.475-.717.873-1.41 1.171-2.06.376-.818.575-1.534.575-2.11 0-2.418-1.974-4.38-4.41-4.38-2.437 0-4.411 1.962-4.411 4.38 0 .576.2 1.292.575 2.11.298.65.696 1.343 1.17 2.06a25.074 25.074 0 0 0 1.79 2.37z"></path><ellipse cx="5.375" cy="5.697" rx="1.732" ry="1.732"></ellipse></g></svg><span class="css-ak2nbp">United Kingdom of Great Britain and Northern Ireland England London</span></div></div><div class="css-9yycaw"><a data-testid="jobsCta" title="Senior Systems Engineer" href="https://careers.cbre.com/careers/JobDetail/Senior-Systems-Engineer/80671" target="_blank" rel="noreferrer noopener nofollow" class="css-leu1cr">View Job Details</a><div class="css-156fhm0"><div class="css-12alag6"><span class="css-10hy8cb"><a class="css-1pwtf47"><span title="Middleware" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/47908/default_9be617a5e2c664be409e91cf0fe77f20478ac4b4.jpg" alt="Middleware" class="css-4lwqz5"/></span></a><a class="css-1pwtf47"><span title="age" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/40373/default_d7b01785a189ee839cb857e2e2eda6a41a3f8e77.png" alt="age" class="css-4lwqz5"/></span></a><a class="css-1pwtf47"><span title="Mind" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/33826/default_3c23ba6e1cf80d146a5b6f44966c5db32d4456fb.png" alt="Mind" class="css-4lwqz5"/></span></a></span><span class="css-pvufaf">+<!-- -->8</span></div><svg xmlns="http://www.w3.org/2000/svg" width="14" height="12" viewBox="0 0 14 12"><g fill="none" fill-rule="evenodd"><rect width="13" height="9" x=".5" y="2.5" stroke="#A1A1A1" rx="2"></rect><path stroke="#A1A1A1" d="M4.5 2.5h5V.999A.492.492 0 0 0 9.01.5H4.99a.5.5 0 0 0-.49.499V2.5z"></path><path fill="#A1A1A1" d="M1 7h12v1H1z"></path><path stroke="#A1A1A1" d="M5.5 7.5v1.501c0 .277.225.499.51.499h1.98a.5.5 0 0 0 .51-.499V7.5h-3z"></path></g></svg></div></div></div><div class="css-1ewdw7x"><div class="css-ih8ay1"><a href="/companies/pinterest" title="Pinterest&#x27;s company profile"><div class="lazyload-wrapper"><div class="lazyload-placeholder"></div></div></a><div class="css-17niv7d"><a href="https://www.pinterestcareers.com/job-form?gh_jid=3846309" title="Software Engineer, Cloud Systems" target="_blank" data-testid="jobsTitle" rel="noreferrer noopener nofollow">Software Engineer, Cloud Systems</a></div><a href="/companies/pinterest" title="Pinterest&#x27;s company profile" class="css-6mpj06">Pinterest</a><div class="css-nio1yx"><svg xmlns="http://www.w3.org/2000/svg" width="11" height="14" viewBox="0 0 11 14"><g fill="none" fill-rule="evenodd" stroke="#49A8F9"><path d="M4.5 12.205l.013.017c.492.612 1.243.612 1.738-.017a25.074 25.074 0 0 0 1.789-2.37c.475-.717.873-1.41 1.171-2.06.376-.818.575-1.534.575-2.11 0-2.418-1.974-4.38-4.41-4.38-2.437 0-4.411 1.962-4.411 4.38 0 .576.2 1.292.575 2.11.298.65.696 1.343 1.17 2.06a25.074 25.074 0 0 0 1.79 2.37z"></path><ellipse cx="5.375" cy="5.697" rx="1.732" ry="1.732"></ellipse></g></svg><span class="css-ak2nbp">San Francisco, CA, US; Seattle, WA, US</span></div></div><div class="css-9yycaw"><a data-testid="jobsCta" title="Software Engineer, Cloud Systems" href="https://www.pinterestcareers.com/job-form?gh_jid=3846309" target="_blank" rel="noreferrer noopener nofollow" class="css-leu1cr">View Job Details</a><div class="css-156fhm0"><div class="css-12alag6"><span class="css-10hy8cb"><a class="css-1pwtf47"><span title="Dream" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/40514/default_c19d22a0eb52861815d6674d4209c48b26039df7.png" alt="Dream" class="css-4lwqz5"/></span></a><a class="css-1pwtf47"><span title="Terraform" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/1276/og-image-8b3e4f7d.png" alt="Terraform" class="css-4lwqz5"/></span></a><a class="css-1pwtf47"><span title="Java" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/995/K85ZWV2F.png" alt="Java" class="css-4lwqz5"/></span></a></span><span class="css-pvufaf">+<!-- -->7</span></div><svg xmlns="http://www.w3.org/2000/svg" width="14" height="12" viewBox="0 0 14 12"><g fill="none" fill-rule="evenodd"><rect width="13" height="9" x=".5" y="2.5" stroke="#A1A1A1" rx="2"></rect><path stroke="#A1A1A1" d="M4.5 2.5h5V.999A.492.492 0 0 0 9.01.5H4.99a.5.5 0 0 0-.49.499V2.5z"></path><path fill="#A1A1A1" d="M1 7h12v1H1z"></path><path stroke="#A1A1A1" d="M5.5 7.5v1.501c0 .277.225.499.51.499h1.98a.5.5 0 0 0 .51-.499V7.5h-3z"></path></g></svg></div></div></div><div class="css-1ewdw7x"><div class="css-ih8ay1"><a href="/companies/pinterest" title="Pinterest&#x27;s company profile"><div class="lazyload-wrapper"><div class="lazyload-placeholder"></div></div></a><div class="css-17niv7d"><a href="https://www.pinterestcareers.com/job-form?gh_jid=3887144" title="Site Reliability Engineer (Contract)" target="_blank" data-testid="jobsTitle" rel="noreferrer noopener nofollow">Site Reliability Engineer (Contract)</a></div><a href="/companies/pinterest" title="Pinterest&#x27;s company profile" class="css-6mpj06">Pinterest</a><div class="css-nio1yx"><svg xmlns="http://www.w3.org/2000/svg" width="11" height="14" viewBox="0 0 11 14"><g fill="none" fill-rule="evenodd" stroke="#49A8F9"><path d="M4.5 12.205l.013.017c.492.612 1.243.612 1.738-.017a25.074 25.074 0 0 0 1.789-2.37c.475-.717.873-1.41 1.171-2.06.376-.818.575-1.534.575-2.11 0-2.418-1.974-4.38-4.41-4.38-2.437 0-4.411 1.962-4.411 4.38 0 .576.2 1.292.575 2.11.298.65.696 1.343 1.17 2.06a25.074 25.074 0 0 0 1.79 2.37z"></path><ellipse cx="5.375" cy="5.697" rx="1.732" ry="1.732"></ellipse></g></svg><span class="css-ak2nbp">San Francisco, CA, US; </span></div></div><div class="css-9yycaw"><a data-testid="jobsCta" title="Site Reliability Engineer (Contract)" href="https://www.pinterestcareers.com/job-form?gh_jid=3887144" target="_blank" rel="noreferrer noopener nofollow" class="css-leu1cr">View Job Details</a><div class="css-156fhm0"><div class="css-12alag6"><span class="css-10hy8cb"><a class="css-1pwtf47"><span title="Infra" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/40791/default_a4357de5c49d215b8aed95cbec211f1cf5885911.jpg" alt="Infra" class="css-4lwqz5"/></span></a><a class="css-1pwtf47"><span title="Dream" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/40514/default_c19d22a0eb52861815d6674d4209c48b26039df7.png" alt="Dream" class="css-4lwqz5"/></span></a><a class="css-1pwtf47"><span title="OpenLDAP" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/5225/zPH8xLZQ_400x400.jpg" alt="OpenLDAP" class="css-4lwqz5"/></span></a></span><span class="css-pvufaf">+<!-- -->10</span></div><svg xmlns="http://www.w3.org/2000/svg" width="14" height="12" viewBox="0 0 14 12"><g fill="none" fill-rule="evenodd"><rect width="13" height="9" x=".5" y="2.5" stroke="#A1A1A1" rx="2"></rect><path stroke="#A1A1A1" d="M4.5 2.5h5V.999A.492.492 0 0 0 9.01.5H4.99a.5.5 0 0 0-.49.499V2.5z"></path><path fill="#A1A1A1" d="M1 7h12v1H1z"></path><path stroke="#A1A1A1" d="M5.5 7.5v1.501c0 .277.225.499.51.499h1.98a.5.5 0 0 0 .51-.499V7.5h-3z"></path></g></svg></div></div></div><div class="css-1ewdw7x"><div class="css-ih8ay1"><a href="/companies/pinterest" title="Pinterest&#x27;s company profile"><div class="lazyload-wrapper"><div class="lazyload-placeholder"></div></div></a><div class="css-17niv7d"><a href="https://www.pinterestcareers.com/job/15989159/engineering-manager-cloud-systems-seattle-wa/?gh_src=9b2671b21&amp;utm_source=stackshare&amp;utm_medium=job-board&amp;utm_campaign=2021-contracts" title="Engineering Manager, Cloud Systems" target="_blank" data-testid="jobsTitle" rel="noreferrer noopener nofollow">Engineering Manager, Cloud Systems</a></div><a href="/companies/pinterest" title="Pinterest&#x27;s company profile" class="css-6mpj06">Pinterest</a><div class="css-nio1yx"><svg xmlns="http://www.w3.org/2000/svg" width="11" height="14" viewBox="0 0 11 14"><g fill="none" fill-rule="evenodd" stroke="#49A8F9"><path d="M4.5 12.205l.013.017c.492.612 1.243.612 1.738-.017a25.074 25.074 0 0 0 1.789-2.37c.475-.717.873-1.41 1.171-2.06.376-.818.575-1.534.575-2.11 0-2.418-1.974-4.38-4.41-4.38-2.437 0-4.411 1.962-4.411 4.38 0 .576.2 1.292.575 2.11.298.65.696 1.343 1.17 2.06a25.074 25.074 0 0 0 1.79 2.37z"></path><ellipse cx="5.375" cy="5.697" rx="1.732" ry="1.732"></ellipse></g></svg><span class="css-ak2nbp">San Francisco, CA, US; Palo Alto, CA, US; Seattle, WA, US; New York, NY, US</span></div></div><div class="css-9yycaw"><a data-testid="jobsCta" title="Engineering Manager, Cloud Systems" href="https://www.pinterestcareers.com/job/15989159/engineering-manager-cloud-systems-seattle-wa/?gh_src=9b2671b21&amp;utm_source=stackshare&amp;utm_medium=job-board&amp;utm_campaign=2021-contracts" target="_blank" rel="noreferrer noopener nofollow" class="css-leu1cr">View Job Details</a><div class="css-156fhm0"><div class="css-12alag6"><span class="css-10hy8cb"><a class="css-1pwtf47"><span title="Dream" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/40514/default_c19d22a0eb52861815d6674d4209c48b26039df7.png" alt="Dream" class="css-4lwqz5"/></span></a><a class="css-1pwtf47"><span title="Terraform" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/1276/og-image-8b3e4f7d.png" alt="Terraform" class="css-4lwqz5"/></span></a><a class="css-1pwtf47"><span title="Java" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/995/K85ZWV2F.png" alt="Java" class="css-4lwqz5"/></span></a></span><span class="css-pvufaf">+<!-- -->7</span></div><svg xmlns="http://www.w3.org/2000/svg" width="14" height="12" viewBox="0 0 14 12"><g fill="none" fill-rule="evenodd"><rect width="13" height="9" x=".5" y="2.5" stroke="#A1A1A1" rx="2"></rect><path stroke="#A1A1A1" d="M4.5 2.5h5V.999A.492.492 0 0 0 9.01.5H4.99a.5.5 0 0 0-.49.499V2.5z"></path><path fill="#A1A1A1" d="M1 7h12v1H1z"></path><path stroke="#A1A1A1" d="M5.5 7.5v1.501c0 .277.225.499.51.499h1.98a.5.5 0 0 0 .51-.499V7.5h-3z"></path></g></svg></div></div></div><div class="css-1ewdw7x"><div class="css-ih8ay1"><a href="/companies/pinterest" title="Pinterest&#x27;s company profile"><div class="lazyload-wrapper"><div class="lazyload-placeholder"></div></div></a><div class="css-17niv7d"><a href="https://www.pinterestcareers.com/job-form?gh_jid=3846309" title="Software Engineer, Cloud Systems" target="_blank" data-testid="jobsTitle" rel="noreferrer noopener nofollow">Software Engineer, Cloud Systems</a></div><a href="/companies/pinterest" title="Pinterest&#x27;s company profile" class="css-6mpj06">Pinterest</a><div class="css-nio1yx"><svg xmlns="http://www.w3.org/2000/svg" width="11" height="14" viewBox="0 0 11 14"><g fill="none" fill-rule="evenodd" stroke="#49A8F9"><path d="M4.5 12.205l.013.017c.492.612 1.243.612 1.738-.017a25.074 25.074 0 0 0 1.789-2.37c.475-.717.873-1.41 1.171-2.06.376-.818.575-1.534.575-2.11 0-2.418-1.974-4.38-4.41-4.38-2.437 0-4.411 1.962-4.411 4.38 0 .576.2 1.292.575 2.11.298.65.696 1.343 1.17 2.06a25.074 25.074 0 0 0 1.79 2.37z"></path><ellipse cx="5.375" cy="5.697" rx="1.732" ry="1.732"></ellipse></g></svg><span class="css-ak2nbp">San Francisco, CA, US; Seattle, WA, US</span></div></div><div class="css-9yycaw"><a data-testid="jobsCta" title="Software Engineer, Cloud Systems" href="https://www.pinterestcareers.com/job-form?gh_jid=3846309" target="_blank" rel="noreferrer noopener nofollow" class="css-leu1cr">View Job Details</a><div class="css-156fhm0"><div class="css-12alag6"><span class="css-10hy8cb"><a class="css-1pwtf47"><span title="Dream" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/40514/default_c19d22a0eb52861815d6674d4209c48b26039df7.png" alt="Dream" class="css-4lwqz5"/></span></a><a class="css-1pwtf47"><span title="Terraform" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/1276/og-image-8b3e4f7d.png" alt="Terraform" class="css-4lwqz5"/></span></a><a class="css-1pwtf47"><span title="Java" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/995/K85ZWV2F.png" alt="Java" class="css-4lwqz5"/></span></a></span><span class="css-pvufaf">+<!-- -->7</span></div><svg xmlns="http://www.w3.org/2000/svg" width="14" height="12" viewBox="0 0 14 12"><g fill="none" fill-rule="evenodd"><rect width="13" height="9" x=".5" y="2.5" stroke="#A1A1A1" rx="2"></rect><path stroke="#A1A1A1" d="M4.5 2.5h5V.999A.492.492 0 0 0 9.01.5H4.99a.5.5 0 0 0-.49.499V2.5z"></path><path fill="#A1A1A1" d="M1 7h12v1H1z"></path><path stroke="#A1A1A1" d="M5.5 7.5v1.501c0 .277.225.499.51.499h1.98a.5.5 0 0 0 .51-.499V7.5h-3z"></path></g></svg></div></div></div><div class="css-1ewdw7x"><div class="css-ih8ay1"><a href="/companies/pinterest" title="Pinterest&#x27;s company profile"><div class="lazyload-wrapper"><div class="lazyload-placeholder"></div></div></a><div class="css-17niv7d"><a href="https://www.pinterestcareers.com/job-form?gh_jid=3887144" title="Site Reliability Engineer (Contract)" target="_blank" data-testid="jobsTitle" rel="noreferrer noopener nofollow">Site Reliability Engineer (Contract)</a></div><a href="/companies/pinterest" title="Pinterest&#x27;s company profile" class="css-6mpj06">Pinterest</a><div class="css-nio1yx"><svg xmlns="http://www.w3.org/2000/svg" width="11" height="14" viewBox="0 0 11 14"><g fill="none" fill-rule="evenodd" stroke="#49A8F9"><path d="M4.5 12.205l.013.017c.492.612 1.243.612 1.738-.017a25.074 25.074 0 0 0 1.789-2.37c.475-.717.873-1.41 1.171-2.06.376-.818.575-1.534.575-2.11 0-2.418-1.974-4.38-4.41-4.38-2.437 0-4.411 1.962-4.411 4.38 0 .576.2 1.292.575 2.11.298.65.696 1.343 1.17 2.06a25.074 25.074 0 0 0 1.79 2.37z"></path><ellipse cx="5.375" cy="5.697" rx="1.732" ry="1.732"></ellipse></g></svg><span class="css-ak2nbp">San Francisco, CA, US; </span></div></div><div class="css-9yycaw"><a data-testid="jobsCta" title="Site Reliability Engineer (Contract)" href="https://www.pinterestcareers.com/job-form?gh_jid=3887144" target="_blank" rel="noreferrer noopener nofollow" class="css-leu1cr">View Job Details</a><div class="css-156fhm0"><div class="css-12alag6"><span class="css-10hy8cb"><a class="css-1pwtf47"><span title="Infra" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/40791/default_a4357de5c49d215b8aed95cbec211f1cf5885911.jpg" alt="Infra" class="css-4lwqz5"/></span></a><a class="css-1pwtf47"><span title="Dream" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/40514/default_c19d22a0eb52861815d6674d4209c48b26039df7.png" alt="Dream" class="css-4lwqz5"/></span></a><a class="css-1pwtf47"><span title="OpenLDAP" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/5225/zPH8xLZQ_400x400.jpg" alt="OpenLDAP" class="css-4lwqz5"/></span></a></span><span class="css-pvufaf">+<!-- -->10</span></div><svg xmlns="http://www.w3.org/2000/svg" width="14" height="12" viewBox="0 0 14 12"><g fill="none" fill-rule="evenodd"><rect width="13" height="9" x=".5" y="2.5" stroke="#A1A1A1" rx="2"></rect><path stroke="#A1A1A1" d="M4.5 2.5h5V.999A.492.492 0 0 0 9.01.5H4.99a.5.5 0 0 0-.49.499V2.5z"></path><path fill="#A1A1A1" d="M1 7h12v1H1z"></path><path stroke="#A1A1A1" d="M5.5 7.5v1.501c0 .277.225.499.51.499h1.98a.5.5 0 0 0 .51-.499V7.5h-3z"></path></g></svg></div></div></div><div class="css-1ewdw7x"><div class="css-ih8ay1"><a href="/companies/pinterest" title="Pinterest&#x27;s company profile"><div class="lazyload-wrapper"><div class="lazyload-placeholder"></div></div></a><div class="css-17niv7d"><a href="https://www.pinterestcareers.com/job-form?gh_jid=4223303" title="Engineering Manager, Cloud Systems" target="_blank" data-testid="jobsTitle" rel="noreferrer noopener nofollow">Engineering Manager, Cloud Systems</a></div><a href="/companies/pinterest" title="Pinterest&#x27;s company profile" class="css-6mpj06">Pinterest</a><div class="css-nio1yx"><svg xmlns="http://www.w3.org/2000/svg" width="11" height="14" viewBox="0 0 11 14"><g fill="none" fill-rule="evenodd" stroke="#49A8F9"><path d="M4.5 12.205l.013.017c.492.612 1.243.612 1.738-.017a25.074 25.074 0 0 0 1.789-2.37c.475-.717.873-1.41 1.171-2.06.376-.818.575-1.534.575-2.11 0-2.418-1.974-4.38-4.41-4.38-2.437 0-4.411 1.962-4.411 4.38 0 .576.2 1.292.575 2.11.298.65.696 1.343 1.17 2.06a25.074 25.074 0 0 0 1.79 2.37z"></path><ellipse cx="5.375" cy="5.697" rx="1.732" ry="1.732"></ellipse></g></svg><span class="css-ak2nbp">San Francisco, CA, US; Palo Alto, CA, US; Seattle, WA, US; New York, NY, US</span></div></div><div class="css-9yycaw"><a data-testid="jobsCta" title="Engineering Manager, Cloud Systems" href="https://www.pinterestcareers.com/job-form?gh_jid=4223303" target="_blank" rel="noreferrer noopener nofollow" class="css-leu1cr">View Job Details</a><div class="css-156fhm0"><div class="css-12alag6"><span class="css-10hy8cb"><a class="css-1pwtf47"><span title="Infra" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/40791/default_a4357de5c49d215b8aed95cbec211f1cf5885911.jpg" alt="Infra" class="css-4lwqz5"/></span></a><a class="css-1pwtf47"><span title="Dream" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/40514/default_c19d22a0eb52861815d6674d4209c48b26039df7.png" alt="Dream" class="css-4lwqz5"/></span></a><a class="css-1pwtf47"><span title="Terraform" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/1276/og-image-8b3e4f7d.png" alt="Terraform" class="css-4lwqz5"/></span></a></span><span class="css-pvufaf">+<!-- -->6</span></div><svg xmlns="http://www.w3.org/2000/svg" width="14" height="12" viewBox="0 0 14 12"><g fill="none" fill-rule="evenodd"><rect width="13" height="9" x=".5" y="2.5" stroke="#A1A1A1" rx="2"></rect><path stroke="#A1A1A1" d="M4.5 2.5h5V.999A.492.492 0 0 0 9.01.5H4.99a.5.5 0 0 0-.49.499V2.5z"></path><path fill="#A1A1A1" d="M1 7h12v1H1z"></path><path stroke="#A1A1A1" d="M5.5 7.5v1.501c0 .277.225.499.51.499h1.98a.5.5 0 0 0 .51-.499V7.5h-3z"></path></g></svg></div></div></div><div class="css-1ewdw7x"><div class="css-ih8ay1"><a href="/companies/pinterest" title="Pinterest&#x27;s company profile"><div class="lazyload-wrapper"><div class="lazyload-placeholder"></div></div></a><div class="css-17niv7d"><a href="https://www.pinterestcareers.com/job/15989159/engineering-manager-cloud-systems-seattle-wa/?gh_src=9b2671b21&amp;utm_source=stackshare&amp;utm_medium=job-board&amp;utm_campaign=2021-contracts" title="Engineering Manager, Cloud Systems" target="_blank" data-testid="jobsTitle" rel="noreferrer noopener nofollow">Engineering Manager, Cloud Systems</a></div><a href="/companies/pinterest" title="Pinterest&#x27;s company profile" class="css-6mpj06">Pinterest</a><div class="css-nio1yx"><svg xmlns="http://www.w3.org/2000/svg" width="11" height="14" viewBox="0 0 11 14"><g fill="none" fill-rule="evenodd" stroke="#49A8F9"><path d="M4.5 12.205l.013.017c.492.612 1.243.612 1.738-.017a25.074 25.074 0 0 0 1.789-2.37c.475-.717.873-1.41 1.171-2.06.376-.818.575-1.534.575-2.11 0-2.418-1.974-4.38-4.41-4.38-2.437 0-4.411 1.962-4.411 4.38 0 .576.2 1.292.575 2.11.298.65.696 1.343 1.17 2.06a25.074 25.074 0 0 0 1.79 2.37z"></path><ellipse cx="5.375" cy="5.697" rx="1.732" ry="1.732"></ellipse></g></svg><span class="css-ak2nbp">San Francisco, CA, US; Palo Alto, CA, US; Seattle, WA, US; New York, NY, US</span></div></div><div class="css-9yycaw"><a data-testid="jobsCta" title="Engineering Manager, Cloud Systems" href="https://www.pinterestcareers.com/job/15989159/engineering-manager-cloud-systems-seattle-wa/?gh_src=9b2671b21&amp;utm_source=stackshare&amp;utm_medium=job-board&amp;utm_campaign=2021-contracts" target="_blank" rel="noreferrer noopener nofollow" class="css-leu1cr">View Job Details</a><div class="css-156fhm0"><div class="css-12alag6"><span class="css-10hy8cb"><a class="css-1pwtf47"><span title="Dream" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/40514/default_c19d22a0eb52861815d6674d4209c48b26039df7.png" alt="Dream" class="css-4lwqz5"/></span></a><a class="css-1pwtf47"><span title="Terraform" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/1276/og-image-8b3e4f7d.png" alt="Terraform" class="css-4lwqz5"/></span></a><a class="css-1pwtf47"><span title="Java" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/995/K85ZWV2F.png" alt="Java" class="css-4lwqz5"/></span></a></span><span class="css-pvufaf">+<!-- -->7</span></div><svg xmlns="http://www.w3.org/2000/svg" width="14" height="12" viewBox="0 0 14 12"><g fill="none" fill-rule="evenodd"><rect width="13" height="9" x=".5" y="2.5" stroke="#A1A1A1" rx="2"></rect><path stroke="#A1A1A1" d="M4.5 2.5h5V.999A.492.492 0 0 0 9.01.5H4.99a.5.5 0 0 0-.49.499V2.5z"></path><path fill="#A1A1A1" d="M1 7h12v1H1z"></path><path stroke="#A1A1A1" d="M5.5 7.5v1.501c0 .277.225.499.51.499h1.98a.5.5 0 0 0 .51-.499V7.5h-3z"></path></g></svg></div></div></div></div><div class="css-f7loz8"><div><a data-testid="seeJobsForLink" href="/jobs/ansible" title="Ansible jobs" class="css-1xexurq">See jobs for Ansible</a></div><div><a data-testid="seeJobsForLink" href="/jobs/terraform" title="Terraform jobs" class="css-1xexurq">See jobs for Terraform</a></div></div></div><div style="border-bottom:0;padding-bottom:0" data-notes="index 0 num 3 offset 0" class="css-3vlw85"><div class="css-f8hv9w"><span>What companies use Ansible?</span></div></div><div style="border-bottom:0;padding-bottom:0" data-notes="index 1 num 3 offset 0" class="css-3vlw85"><div class="css-f8hv9w"><span>What companies use Terraform?</span></div></div><div style="border-right:0;border-bottom:0;padding-bottom:0" data-notes="index 2 num 3 offset 0" class="css-3vlw85"></div><div data-notes="index 0 num 3 offset 0" class="css-3vlw85"><div class="css-nil"><div class="css-nil"><div class="css-4pt7vy"><h2 hidden="" class="css-nil">What companies use Ansible?</h2><ul class="css-7c9av6"><li class="css-6nrkpz"><a href="/udemy/udemy" class="css-mta8ak"><div class="css-1pwtf47"><span title="Udemy" class="css-13fg6qi service"><img src="https://img.stackshare.io/company/365/thumb_139b6882a2de6f1ba5f36ab52b6180c3cd08f043.png" alt="Udemy" class="css-4lwqz5"/></span> </div><span class="css-rsz8c">Udemy</span></a></li><li class="css-6nrkpz"><a href="/launchdarkly/launchdarkly" class="css-mta8ak"><div class="css-1pwtf47"><span title="LaunchDarkly" class="css-13fg6qi service"><img src="https://img.stackshare.io/company/6182/thumb_2119cf7ac922b781704952f39f729d1cc1bd3692.png" alt="LaunchDarkly" class="css-4lwqz5"/></span> </div><span class="css-rsz8c">LaunchDarkly</span></a></li><li class="css-6nrkpz"><a href="/tokopedia/tokopedia" class="css-mta8ak"><div class="css-1pwtf47"><span title="Tokopedia" class="css-13fg6qi service"><img src="https://img.stackshare.io/company/21102/thumb_1d5a3094fef7ba1a5b1a57f1651369581bc22cc4.jpg" alt="Tokopedia" class="css-4lwqz5"/></span> </div><span class="css-rsz8c">Tokopedia</span></a></li><li class="css-6nrkpz"><a href="/hepsiburada/hepsiburada" class="css-mta8ak"><div class="css-1pwtf47"><span title="Hepsiburada" class="css-13fg6qi service"><img src="https://img.stackshare.io/company/29765/thumb_11753097.png" alt="Hepsiburada" class="css-4lwqz5"/></span> </div><span class="css-rsz8c">Hepsiburada</span></a></li><li class="css-6nrkpz"><a href="/revolut/revolut" class="css-mta8ak"><div class="css-1pwtf47"><span title="Revolut" class="css-13fg6qi service"><img src="https://img.stackshare.io/company/17445/thumb_b8eec4bab7316116a7e0909123bf7e3df6e028aa.png" alt="Revolut" class="css-4lwqz5"/></span> </div><span class="css-rsz8c">Revolut</span></a></li><li class="css-6nrkpz"><a href="/trivago/trivago" class="css-mta8ak"><div class="css-1pwtf47"><span title="trivago" class="css-13fg6qi service"><img src="https://img.stackshare.io/company/2084/thumb_79d34713b767344ee779dd08bde3899f9a7939b4.png" alt="trivago" class="css-4lwqz5"/></span> </div><span class="css-rsz8c">trivago</span></a></li><li class="css-6nrkpz"><a href="/alibaba-group/alibaba-travels" class="css-mta8ak"><div class="css-1pwtf47"><span title="Alibaba Group" class="css-13fg6qi service"><img src="https://img.stackshare.io/company/162563/thumb_778ed136d08980e90396ec94375170f61fd083a4.png" alt="Alibaba Group" class="css-4lwqz5"/></span> </div><span class="css-rsz8c">Alibaba Group</span></a></li></ul></div></div></div></div><div data-notes="index 1 num 3 offset 0" class="css-3vlw85"><div class="css-nil"><div class="css-nil"><div class="css-4pt7vy"><h2 hidden="" class="css-nil">What companies use Terraform?</h2><ul class="css-7c9av6"><li class="css-6nrkpz"><a href="/uber-technologies/uber" class="css-mta8ak"><div class="css-1pwtf47"><span title="Uber Technologies" class="css-13fg6qi service"><img src="https://img.stackshare.io/company/363/thumb_e5d5db9bd2df8488fe8e61913e700c52ec9c13e4.jpg" alt="Uber Technologies" class="css-4lwqz5"/></span> </div><span class="css-rsz8c">Uber Technologies</span></a></li><li class="css-6nrkpz"><a href="/udemy/udemy" class="css-mta8ak"><div class="css-1pwtf47"><span title="Udemy" class="css-13fg6qi service"><img src="https://img.stackshare.io/company/365/thumb_139b6882a2de6f1ba5f36ab52b6180c3cd08f043.png" alt="Udemy" class="css-4lwqz5"/></span> </div><span class="css-rsz8c">Udemy</span></a></li><li class="css-6nrkpz"><a href="/instacart/instacart" class="css-mta8ak"><div class="css-1pwtf47"><span title="Instacart" class="css-13fg6qi service"><img src="https://img.stackshare.io/company/174/thumb_3db7d44e23a905728f32f343a244c769223ba786.jpg" alt="Instacart" class="css-4lwqz5"/></span> </div><span class="css-rsz8c">Instacart</span></a></li><li class="css-6nrkpz"><a href="/robinhood/robinhood" class="css-mta8ak"><div class="css-1pwtf47"><span title="Robinhood" class="css-13fg6qi service"><img src="https://img.stackshare.io/company/10640/thumb_227fe5c26a1518cab3dc8b8b13e7575636c9db45.png" alt="Robinhood" class="css-4lwqz5"/></span> </div><span class="css-rsz8c">Robinhood</span></a></li><li class="css-6nrkpz"><a href="/slack/slack" class="css-mta8ak"><div class="css-1pwtf47"><span title="Slack" class="css-13fg6qi service"><img src="https://img.stackshare.io/company/308/thumb_c854a41f2e8fe982eb5704e3af9c2b4d9f1a2ffe.jpg" alt="Slack" class="css-4lwqz5"/></span> </div><span class="css-rsz8c">Slack</span></a></li><li class="css-6nrkpz"><a href="/launchdarkly/launchdarkly" class="css-mta8ak"><div class="css-1pwtf47"><span title="LaunchDarkly" class="css-13fg6qi service"><img src="https://img.stackshare.io/company/6182/thumb_2119cf7ac922b781704952f39f729d1cc1bd3692.png" alt="LaunchDarkly" class="css-4lwqz5"/></span> </div><span class="css-rsz8c">LaunchDarkly</span></a></li><li class="css-6nrkpz"><a href="/twitch/twitch" class="css-mta8ak"><div class="css-1pwtf47"><span title="Twitch" class="css-13fg6qi service"><img src="https://img.stackshare.io/company/360/thumb_bbe11f9cd4920eb6fb7ab9e57fbda01eaddf6435.jpg" alt="Twitch" class="css-4lwqz5"/></span> </div><span class="css-rsz8c">Twitch</span></a></li></ul></div></div></div></div><div style="border-right:0;padding-top:0;margin-top:-20px" data-notes="index 2 num 3 offset 0" class="css-3vlw85"><div style="margin-top:0;border:0" class="css-cn7d1w"><svg class="css-1fj3l7d" xmlns="http://www.w3.org/2000/svg" width="123" height="70" viewBox="0 0 123 70"><g fill="none" fill-rule="evenodd"><g fill="#008FF9" stroke="#008FF9" opacity=".74"><g stroke-width="2.207" opacity=".413"><path d="M62.27 24.009c6.068 0 11.004-4.937 11.004-11.005C73.274 6.937 68.338 2 62.27 2S51.266 6.937 51.266 13.004c0 6.068 4.936 11.005 11.004 11.005zm0-19.368c4.612 0 8.363 3.752 8.363 8.363 0 4.612-3.751 8.364-8.363 8.364-4.611 0-8.363-3.752-8.363-8.364 0-4.611 3.752-8.363 8.363-8.363zm-.579 24.58c-11.177 0-20.271 9.28-20.271 20.689 0 .73.58 1.32 1.294 1.32.714 0 1.294-.59 1.294-1.32 0-9.951 7.932-18.047 17.683-18.047 9.75 0 17.683 8.096 17.683 18.047 0 .73.58 1.32 1.294 1.32.714 0 1.294-.59 1.294-1.32 0-11.407-9.093-20.688-20.271-20.688z" opacity=".502"></path></g><g opacity=".266"><path stroke-width="1.927" d="M33.506 27.484c-5.323 0-9.653-4.33-9.653-9.653s4.33-9.653 9.653-9.653c5.322 0 9.653 4.33 9.653 9.653 0 5.322-4.33 9.653-9.653 9.653zm0-16.99c-4.045 0-7.336 3.292-7.336 7.337s3.29 7.336 7.336 7.336c4.045 0 7.336-3.291 7.336-7.336s-3.291-7.336-7.336-7.336z" opacity=".502"></path><path stroke-width="1.986" d="M42.973 33.722c9.802 2.263 15.898 12.243 13.588 22.246a1.176 1.176 0 0 1-1.402.896 1.176 1.176 0 0 1-.867-1.42c2.015-8.726-3.303-17.432-11.853-19.406-8.55-1.974-17.146 3.52-19.161 12.246a1.177 1.177 0 0 1-1.402.896 1.176 1.176 0 0 1-.867-1.42c2.31-10.003 12.162-16.3 21.964-14.038z" opacity=".502"></path></g><g opacity=".266"><path stroke-width="1.927" d="M90.263 27.484c5.323 0 9.653-4.33 9.653-9.653s-4.33-9.653-9.653-9.653c-5.322 0-9.653 4.33-9.653 9.653 0 5.322 4.33 9.653 9.653 9.653zm0-16.99c4.045 0 7.337 3.292 7.337 7.337s-3.292 7.336-7.337 7.336-7.336-3.291-7.336-7.336 3.291-7.336 7.336-7.336z" opacity=".502"></path><path stroke-width="1.986" d="M80.217 33.722c-9.802 2.263-15.898 12.243-13.588 22.246.147.64.775 1.041 1.402.896a1.176 1.176 0 0 0 .867-1.42c-2.015-8.726 3.303-17.432 11.853-19.406 8.55-1.974 17.146 3.52 19.161 12.246.148.64.776 1.041 1.402.896a1.176 1.176 0 0 0 .867-1.42c-2.31-10.003-12.162-16.3-21.964-14.038z" opacity=".502"></path></g><g stroke-width="1.413" opacity=".184"><path d="M111.547 31.915a7.05 7.05 0 0 0 7.042-7.042c0-3.884-3.159-7.043-7.042-7.043-3.885 0-7.043 3.16-7.043 7.043s3.16 7.042 7.043 7.042zm0-12.395a5.358 5.358 0 0 1 5.352 5.353c0 2.951-2.4 5.352-5.352 5.352a5.358 5.358 0 0 1-5.353-5.352 5.359 5.359 0 0 1 5.353-5.353zm-6.725 21.023a.815.815 0 0 1-1.119.139.75.75 0 0 1-.144-1.08c2.39-2.98 6.001-4.69 9.906-4.69 2.508 0 4.927.712 6.997 2.06a.753.753 0 0 1 .215 1.068.818.818 0 0 1-1.109.207 11.152 11.152 0 0 0-6.103-1.796c-3.406 0-6.557 1.492-8.642 4.092z" opacity=".502"></path></g><g stroke-width="1.413" opacity=".177"><path d="M10.871 31.915a7.05 7.05 0 0 1-7.042-7.042c0-3.884 3.159-7.043 7.042-7.043 3.885 0 7.043 3.16 7.043 7.043s-3.16 7.042-7.043 7.042zm0-12.395a5.358 5.358 0 0 0-5.352 5.353c0 2.951 2.4 5.352 5.352 5.352 2.952 0 5.353-2.4 5.353-5.352a5.359 5.359 0 0 0-5.353-5.353zM3.036 40.543a.818.818 0 0 1-1.121.139.751.751 0 0 1-.144-1.08c2.39-2.98 6.002-4.69 9.907-4.69 2.507 0 4.927.712 6.996 2.06a.751.751 0 0 1 .215 1.068.818.818 0 0 1-1.109.207 11.147 11.147 0 0 0-6.102-1.797c-3.407 0-6.557 1.492-8.643 4.092z" opacity=".502"></path></g></g><g><path fill="#008FF9" stroke="#008FF9" stroke-width=".842" d="M61.047 16.51c-6.44 3.802-13.035 6.6-20.164 8.553a2.453 2.453 0 0 0-1.302.88 2.452 2.452 0 0 0-.504 1.487v9.447c0 11.603 5.26 19.355 10.029 24.121.827.81 1.69 1.57 2.569 2.274 2.796 2.241 5.735 3.912 7.985 4.731 1.047.382 1.953.58 2.636.58.684 0 1.59-.198 2.637-.58 2.19-.797 5.033-2.401 7.762-4.554a34.855 34.855 0 0 0 2.813-2.472c4.57-4.487 10.007-12.303 10.007-24.1V27.43c0-.603-.16-1.098-.46-1.493-.297-.388-.736-.684-1.346-.874-6.932-1.899-13.906-4.857-20.166-8.553a2.454 2.454 0 0 0-2.495 0z"></path><path fill="#FFF" stroke="#008FF9" stroke-width=".605" d="M62.079 18.257c-6.664 3.935-13.492 6.82-20.974 8.945v9.675c0 10.19 4.31 17.217 8.465 21.7V43.259c0-.483.197-.922.515-1.24a1.75 1.75 0 0 1 1.24-.514h2.21v-1.447c0-2.426.97-4.627 2.538-6.222 1.566-1.591 3.727-2.579 6.111-2.579a8.55 8.55 0 0 1 6.112 2.58 8.863 8.863 0 0 1 2.539 6.227v1.441h2.43c.484 0 .923.197 1.24.515.318.317.515.756.515 1.24v15.31c4.065-4.333 8.465-11.397 8.465-21.694l-.092-9.795-1.11-.31c-6.809-1.951-13.627-4.887-20.204-8.515zm.105 15.133c-1.81 0-3.451.748-4.64 1.956a6.7 6.7 0 0 0-1.921 4.71v1.448h13.123v-1.447a6.697 6.697 0 0 0-1.922-4.711 6.491 6.491 0 0 0-4.64-1.956z"></path><path fill="#FFF" d="M83.182 36.877c0 9.758-3.988 16.585-7.86 20.916V43.258a2.059 2.059 0 0 0-2.056-2.056h-2.129v-1.139c0-5.021-4.014-9.11-8.953-9.11-4.938 0-8.952 4.089-8.952 9.104v1.145h-1.908a2.059 2.059 0 0 0-2.056 2.056v14.535a4.32 4.32 0 0 1-.11-.122c-3.837-4.336-7.75-11.129-7.75-20.794V27.43c0-.055.037-.103.09-.118 7.331-2.009 14.114-4.885 20.735-8.794.02-.012.04-.017.062-.017s.043.005.062.017c6.437 3.8 13.607 6.84 20.735 8.794.053.015.09.063.09.118v9.447z"></path><path fill="#FFF" d="M67.197 57.374c-.6 0-1.1-.413-1.212-.96 0 0-.032-.23 0-.463.112-.546.613-.96 1.211-.96.681 0 1.235.535 1.235 1.192 0 .657-.554 1.191-1.235 1.191m-10.759-4.22c-.68 0-1.234-.534-1.234-1.19 0-.658.553-1.192 1.234-1.192.681 0 1.235.534 1.235 1.191s-.554 1.192-1.235 1.192m9.539-5.687v-.008c.112-.546.612-.96 1.21-.96.681 0 1.235.534 1.235 1.192 0 .657-.554 1.191-1.234 1.191-.6 0-1.1-.413-1.211-.96-.028-.21 0-.455 0-.455m1.22 6.446c-1.07 0-1.972.69-2.256 1.635h-1.393l-2.175-3.612v-.006l2.172-3.605h1.386c.285.944 1.187 1.634 2.257 1.634 1.297 0 2.35-1.016 2.35-2.268 0-1.253-1.053-2.269-2.35-2.269-1.07 0-1.972.69-2.257 1.634h-2.113l-.021-.012-2.56 4.252-.02.032h-1.521c-.285-.944-1.187-1.634-2.257-1.634-1.297 0-2.35 1.016-2.35 2.268 0 1.253 1.053 2.268 2.35 2.268 1.07 0 1.972-.69 2.257-1.634h1.555l2.546 4.227.011-.007h2.134c.284.944 1.187 1.634 2.256 1.634 1.298 0 2.35-1.016 2.35-2.268 0-1.253-1.052-2.269-2.35-2.269m1.246-12.712H55.925v-1.145c0-3.511 2.806-6.364 6.26-6.364 3.452 0 6.258 2.853 6.258 6.364v1.145z"></path></g></g></svg><div class="css-i272tr">See which teams inside your own company are using Ansible or Terraform.<!-- --> </div><a href="/manage-companies/enterprise" class="css-56ijgy">Sign up for StackShare Enterprise</a><a href="/enterprise" class="css-1l7t0dr">Learn More</a></div></div><div class="css-5k0ecd"><div class="css-p8n7zj"><div class="css-1uq0dwx"><svg class="css-1p6gwer" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 76 76"><g fill="none"><path fill="#068DFE" d="M73.548 63.742V23.29a6.137 6.137 0 0 0-6.129-6.129h-3.677C63.742 7.698 56.044 0 46.58 0c-9.464 0-17.162 7.698-17.162 17.161H8.581a6.136 6.136 0 0 0-6.13 6.13v40.45H0v6.13C0 73.251 2.75 76 6.129 76h63.742C73.251 76 76 73.25 76 69.871v-6.13h-2.452zm-6.129-44.13a3.682 3.682 0 0 1 3.678 3.678v40.452h-2.452V24.516c0-1.352-1.1-2.451-2.451-2.451h-3.175a17.04 17.04 0 0 0 .527-2.452h3.873zm-34.836-6.955l13.01 5.421 4.456 13.363c-1.115.27-2.272.43-3.468.43-8.112 0-14.71-6.598-14.71-14.71 0-1.571.254-3.084.712-4.504zm19.794 18.019l-4.394-13.184 9.818-9.819a14.63 14.63 0 0 1 3.49 9.488c0 6.053-3.678 11.26-8.914 13.515zM46.581 2.452a14.64 14.64 0 0 1 9.489 3.487l-9.775 9.774-12.762-5.316c2.453-4.714 7.376-7.945 13.048-7.945zM4.903 23.29a3.682 3.682 0 0 1 3.678-3.677h21.035c.12.837.289 1.657.526 2.452H9.806a2.454 2.454 0 0 0-2.451 2.451v39.226H4.903V23.29zm68.645 46.581a3.682 3.682 0 0 1-3.677 3.677H6.129a3.682 3.682 0 0 1-3.677-3.677v-3.677h25.254a9.525 9.525 0 0 0 6.407 2.451h7.775c2.39 0 4.645-.867 6.407-2.451h15.447v-2.452H47.299l-.36.36a7.096 7.096 0 0 1-5.052 2.092h-7.775a7.098 7.098 0 0 1-5.053-2.093l-.358-.36H9.806V24.517H31.1c2.762 5.789 8.653 9.807 15.482 9.807 6.828 0 12.72-4.018 15.481-9.807h4.132v41.678h7.354v3.677z"></path><path fill="#068DFE" d="M60.286 51.286c-.76 0-1.468.227-2.057.613l-4.32-3.176c.11-.344.186-.702.186-1.08 0-2.008-1.666-3.643-3.714-3.643s-3.714 1.635-3.714 3.643c0 .418.086.813.219 1.187l-6.935 5.442A3.728 3.728 0 0 0 38 53.714a3.73 3.73 0 0 0-2.215.736l-5.339-3.491c.075-.285.125-.58.125-.888 0-2.008-1.666-3.642-3.714-3.642-2.047 0-3.714 1.634-3.714 3.642 0 .309.05.603.125.888l-5.339 3.491a3.722 3.722 0 0 0-2.215-.736c-2.047 0-3.714 1.635-3.714 3.643S13.667 61 15.714 61c2.048 0 3.715-1.635 3.715-3.643 0-.308-.051-.602-.126-.887l5.34-3.492c.62.457 1.381.736 2.214.736s1.595-.279 2.215-.736l5.339 3.492c-.075.285-.125.58-.125.887C34.286 59.365 35.952 61 38 61s3.714-1.635 3.714-3.643c0-.418-.086-.813-.219-1.187l6.935-5.442a3.728 3.728 0 0 0 4.008-.055l4.319 3.176c-.11.344-.186.702-.186 1.08 0 2.008 1.667 3.642 3.715 3.642 2.047 0 3.714-1.634 3.714-3.642 0-2.009-1.667-3.643-3.714-3.643zM15.714 58.57a1.229 1.229 0 0 1-1.238-1.214c0-.669.556-1.214 1.238-1.214.682 0 1.238.545 1.238 1.214 0 .669-.556 1.214-1.238 1.214zm11.143-7.285a1.229 1.229 0 0 1-1.238-1.215c0-.668.556-1.214 1.238-1.214.682 0 1.238.546 1.238 1.214 0 .67-.556 1.215-1.238 1.215zM38 58.57a1.229 1.229 0 0 1-1.238-1.214c0-.669.556-1.214 1.238-1.214.682 0 1.238.545 1.238 1.214 0 .669-.556 1.214-1.238 1.214zm12.381-9.714a1.229 1.229 0 0 1-1.238-1.214c0-.669.556-1.214 1.238-1.214.682 0 1.238.545 1.238 1.214 0 .669-.556 1.214-1.238 1.214zm9.905 7.286a1.229 1.229 0 0 1-1.238-1.214c0-.67.556-1.215 1.238-1.215a1.23 1.23 0 0 1 1.238 1.215c0 .668-.556 1.214-1.238 1.214z"></path><path fill="#E8F4FF" d="M32 27H12v17h20z"></path><path fill="#068DFE" d="M17 32h10v2H17zm0 5h10v2H17zm18 2h2v2h-2z"></path><path fill="#E8F4FF" d="M39 39h24v2H39z"></path></g></svg><h1 class="css-lr10t7">Sign up to get full access to all the companies<span class="css-4yzqpf">Make informed product decisions</span></h1></div><button data-testid="signupFullAccessButton" class="css-st9eg3">Sign up now</button></div></div><div id="integrations" style="pointer-events:none;grid-column:span 3;display:block;height:182px;margin-top:-182px"></div><div style="border-bottom:0;padding-bottom:0" data-notes="index 0 num 3 offset 0" class="css-3vlw85"><div class="css-f8hv9w"><span>What tools integrate with Ansible?</span></div></div><div style="border-bottom:0;padding-bottom:0" data-notes="index 1 num 3 offset 0" class="css-3vlw85"><div class="css-f8hv9w"><span>What tools integrate with Terraform?</span></div></div><div style="border-right:0;border-bottom:0;padding-bottom:0" data-notes="index 2 num 3 offset 0" class="css-3vlw85"></div><div data-notes="index 0 num 3 offset 0" class="css-3vlw85"><div class="css-nil"><div class="css-nil"><div class="css-4pt7vy"><h2 hidden="" class="css-nil">What tools integrate with Ansible?</h2><ul class="css-7c9av6"><li class="css-6nrkpz"><a href="/docker" class="css-mta8ak"><div class="css-1pwtf47"><span title="Docker" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/586/thumb_n4u37v9t_400x400.png" alt="Docker" class="css-4lwqz5"/></span> </div><span class="css-rsz8c">Docker</span></a></li><li class="css-6nrkpz"><a href="/kubernetes" class="css-mta8ak"><div class="css-1pwtf47"><span title="Kubernetes" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/1885/thumb_21_d3cvM.png" alt="Kubernetes" class="css-4lwqz5"/></span> </div><span class="css-rsz8c">Kubernetes</span></a></li><li class="css-6nrkpz"><a href="/amazon-ec2" class="css-mta8ak"><div class="css-1pwtf47"><span title="Amazon EC2" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/18/thumb_amazon-ec2.png" alt="Amazon EC2" class="css-4lwqz5"/></span> </div><span class="css-rsz8c">Amazon EC2</span></a></li><li class="css-6nrkpz"><a href="/microsoft-azure" class="css-mta8ak"><div class="css-1pwtf47"><span title="Microsoft Azure" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/213/thumb_88defae415fcb9cd0ac5d36c1ed27e74133c6287.jpg" alt="Microsoft Azure" class="css-4lwqz5"/></span> </div><span class="css-rsz8c">Microsoft Azure</span></a></li><li class="css-6nrkpz"><a href="/new-relic" class="css-mta8ak"><div class="css-1pwtf47"><span title="New Relic" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/103/thumb_193410db3a7e419c7b436961bf41d733c7346b59.png" alt="New Relic" class="css-4lwqz5"/></span> </div><span class="css-rsz8c">New Relic</span></a></li><li class="css-6nrkpz"><a href="/google-compute-engine" class="css-mta8ak"><div class="css-1pwtf47"><span title="Google Compute Engine" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/518/thumb_s01TMTGn.png" alt="Google Compute Engine" class="css-4lwqz5"/></span> </div><span class="css-rsz8c">Google Compute Engine</span></a></li><li class="css-6nrkpz"><a href="/twilio" class="css-mta8ak"><div class="css-1pwtf47"><span title="Twilio" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/130/thumb_VrwpNfjh_400x400.png" alt="Twilio" class="css-4lwqz5"/></span> </div><span class="css-rsz8c">Twilio</span></a></li></ul></div></div></div></div><div data-notes="index 1 num 3 offset 0" class="css-3vlw85"><div class="css-nil"><div class="css-nil"><div class="css-4pt7vy"><h2 hidden="" class="css-nil">What tools integrate with Terraform?</h2><ul class="css-7c9av6"><li class="css-6nrkpz"><a href="/cloudflare" class="css-mta8ak"><div class="css-1pwtf47"><span title="CloudFlare" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/15/thumb_twitter-profile-400x400.png" alt="CloudFlare" class="css-4lwqz5"/></span> </div><span class="css-rsz8c">CloudFlare</span></a></li><li class="css-6nrkpz"><a href="/amazon-ec2" class="css-mta8ak"><div class="css-1pwtf47"><span title="Amazon EC2" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/18/thumb_amazon-ec2.png" alt="Amazon EC2" class="css-4lwqz5"/></span> </div><span class="css-rsz8c">Amazon EC2</span></a></li><li class="css-6nrkpz"><a href="/heroku" class="css-mta8ak"><div class="css-1pwtf47"><span title="Heroku" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/133/thumb_3wgIDj3j.png" alt="Heroku" class="css-4lwqz5"/></span> </div><span class="css-rsz8c">Heroku</span></a></li><li class="css-6nrkpz"><a href="/microsoft-azure" class="css-mta8ak"><div class="css-1pwtf47"><span title="Microsoft Azure" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/213/thumb_88defae415fcb9cd0ac5d36c1ed27e74133c6287.jpg" alt="Microsoft Azure" class="css-4lwqz5"/></span> </div><span class="css-rsz8c">Microsoft Azure</span></a></li><li class="css-6nrkpz"><a href="/digitalocean" class="css-mta8ak"><div class="css-1pwtf47"><span title="DigitalOcean" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/295/thumb_Onjxs6Lw_400x400.jpg" alt="DigitalOcean" class="css-4lwqz5"/></span> </div><span class="css-rsz8c">DigitalOcean</span></a></li><li class="css-6nrkpz"><a href="/google-compute-engine" class="css-mta8ak"><div class="css-1pwtf47"><span title="Google Compute Engine" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/518/thumb_s01TMTGn.png" alt="Google Compute Engine" class="css-4lwqz5"/></span> </div><span class="css-rsz8c">Google Compute Engine</span></a></li><li class="css-6nrkpz"><a href="/consul" class="css-mta8ak"><div class="css-1pwtf47"><span title="Consul" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/747/thumb_consul-logo-grad_teaser.png" alt="Consul" class="css-4lwqz5"/></span> </div><span class="css-rsz8c">Consul</span></a></li></ul></div></div></div></div><div style="border-right:0" data-notes="index 2 num 3 offset 0" class="css-3vlw85"></div><div class="css-5k0ecd"><div class="css-p8n7zj"><div class="css-1uq0dwx"><svg class="css-1p6gwer" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 76 76"><g fill="none"><path fill="#068DFE" d="M73.548 63.742V23.29a6.137 6.137 0 0 0-6.129-6.129h-3.677C63.742 7.698 56.044 0 46.58 0c-9.464 0-17.162 7.698-17.162 17.161H8.581a6.136 6.136 0 0 0-6.13 6.13v40.45H0v6.13C0 73.251 2.75 76 6.129 76h63.742C73.251 76 76 73.25 76 69.871v-6.13h-2.452zm-6.129-44.13a3.682 3.682 0 0 1 3.678 3.678v40.452h-2.452V24.516c0-1.352-1.1-2.451-2.451-2.451h-3.175a17.04 17.04 0 0 0 .527-2.452h3.873zm-34.836-6.955l13.01 5.421 4.456 13.363c-1.115.27-2.272.43-3.468.43-8.112 0-14.71-6.598-14.71-14.71 0-1.571.254-3.084.712-4.504zm19.794 18.019l-4.394-13.184 9.818-9.819a14.63 14.63 0 0 1 3.49 9.488c0 6.053-3.678 11.26-8.914 13.515zM46.581 2.452a14.64 14.64 0 0 1 9.489 3.487l-9.775 9.774-12.762-5.316c2.453-4.714 7.376-7.945 13.048-7.945zM4.903 23.29a3.682 3.682 0 0 1 3.678-3.677h21.035c.12.837.289 1.657.526 2.452H9.806a2.454 2.454 0 0 0-2.451 2.451v39.226H4.903V23.29zm68.645 46.581a3.682 3.682 0 0 1-3.677 3.677H6.129a3.682 3.682 0 0 1-3.677-3.677v-3.677h25.254a9.525 9.525 0 0 0 6.407 2.451h7.775c2.39 0 4.645-.867 6.407-2.451h15.447v-2.452H47.299l-.36.36a7.096 7.096 0 0 1-5.052 2.092h-7.775a7.098 7.098 0 0 1-5.053-2.093l-.358-.36H9.806V24.517H31.1c2.762 5.789 8.653 9.807 15.482 9.807 6.828 0 12.72-4.018 15.481-9.807h4.132v41.678h7.354v3.677z"></path><path fill="#068DFE" d="M60.286 51.286c-.76 0-1.468.227-2.057.613l-4.32-3.176c.11-.344.186-.702.186-1.08 0-2.008-1.666-3.643-3.714-3.643s-3.714 1.635-3.714 3.643c0 .418.086.813.219 1.187l-6.935 5.442A3.728 3.728 0 0 0 38 53.714a3.73 3.73 0 0 0-2.215.736l-5.339-3.491c.075-.285.125-.58.125-.888 0-2.008-1.666-3.642-3.714-3.642-2.047 0-3.714 1.634-3.714 3.642 0 .309.05.603.125.888l-5.339 3.491a3.722 3.722 0 0 0-2.215-.736c-2.047 0-3.714 1.635-3.714 3.643S13.667 61 15.714 61c2.048 0 3.715-1.635 3.715-3.643 0-.308-.051-.602-.126-.887l5.34-3.492c.62.457 1.381.736 2.214.736s1.595-.279 2.215-.736l5.339 3.492c-.075.285-.125.58-.125.887C34.286 59.365 35.952 61 38 61s3.714-1.635 3.714-3.643c0-.418-.086-.813-.219-1.187l6.935-5.442a3.728 3.728 0 0 0 4.008-.055l4.319 3.176c-.11.344-.186.702-.186 1.08 0 2.008 1.667 3.642 3.715 3.642 2.047 0 3.714-1.634 3.714-3.642 0-2.009-1.667-3.643-3.714-3.643zM15.714 58.57a1.229 1.229 0 0 1-1.238-1.214c0-.669.556-1.214 1.238-1.214.682 0 1.238.545 1.238 1.214 0 .669-.556 1.214-1.238 1.214zm11.143-7.285a1.229 1.229 0 0 1-1.238-1.215c0-.668.556-1.214 1.238-1.214.682 0 1.238.546 1.238 1.214 0 .67-.556 1.215-1.238 1.215zM38 58.57a1.229 1.229 0 0 1-1.238-1.214c0-.669.556-1.214 1.238-1.214.682 0 1.238.545 1.238 1.214 0 .669-.556 1.214-1.238 1.214zm12.381-9.714a1.229 1.229 0 0 1-1.238-1.214c0-.669.556-1.214 1.238-1.214.682 0 1.238.545 1.238 1.214 0 .669-.556 1.214-1.238 1.214zm9.905 7.286a1.229 1.229 0 0 1-1.238-1.214c0-.67.556-1.215 1.238-1.215a1.23 1.23 0 0 1 1.238 1.215c0 .668-.556 1.214-1.238 1.214z"></path><path fill="#E8F4FF" d="M32 27H12v17h20z"></path><path fill="#068DFE" d="M17 32h10v2H17zm0 5h10v2H17zm18 2h2v2h-2z"></path><path fill="#E8F4FF" d="M39 39h24v2H39z"></path></g></svg><h1 class="css-lr10t7">Sign up to get full access to all the tool integrations<span class="css-4yzqpf">Make informed product decisions</span></h1></div><button data-testid="signupFullAccessButton" class="css-st9eg3">Sign up now</button></div></div><div class="css-5k0ecd"><div id="posts" style="pointer-events:none;grid-column:span 3;display:block;height:182px;margin-top:-182px"></div><div class="css-fa6ece"><h3 id="blog-posts">Blog Posts</h3></div><div class="css-vbfwyr"><div class="css-1gtwocl"><div class="css-1kcdhc3"><div class="css-cuzej8"><div class="css-12h9n7t"><a href="/red-hat-inc/ai-slash-ml-pipelines-using-open-data-hub-and-kubeflow-on-red-hat-openshift">AI/ML Pipelines Using Open Data Hub and Kubeflow on Red Hat Op...</a></div></div><div class="css-m2gwm">Jan 29 2020 at 2:08PM</div><div class="css-14kdfdp"><div class="lazyload-wrapper"><div class="lazyload-placeholder"></div></div><p>Red Hat, Inc.</p></div></div><div class="css-lscypq"><div class="css-12alag6"><span class="css-10hy8cb"><a class="css-1pwtf47"><span title="Python" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/993/pUBY5pVj.png" alt="Python" class="css-4lwqz5"/></span></a><a class="css-1pwtf47"><span title="Docker" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/586/n4u37v9t_400x400.png" alt="Docker" class="css-4lwqz5"/></span></a><a class="css-1pwtf47"><span title="Kubernetes" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/1885/21_d3cvM.png" alt="Kubernetes" class="css-4lwqz5"/></span></a></span><span class="css-pvufaf">+<!-- -->14</span></div><div class="css-maw68b"><div class="favourites"><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 14 14"><path fill="none" fill-rule="evenodd" stroke="#ADADAD" stroke-width="1.166" d="M12.045 6.038H8.038l-.137-.389-1.296-3.673L5.17 6.038H1.165L4.488 8.65l-.13.389-1.284 3.853 3.53-2.59.346.253 3.185 2.337L8.721 8.65l.323-.254 3-2.358zm-11.58-.55zm12.28 0z"></path></svg> <span>11</span></div><div class="views"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="11" viewBox="0 0 18 11"><g fill="#ADADAD" fill-rule="evenodd"><path fill-rule="nonzero" stroke="#ADADAD" stroke-width=".533" d="M17.409 4.88a.684.684 0 0 1 0 .862c-.142.176-.378.443-.695.766a15.262 15.262 0 0 1-1.7 1.494c-1.777 1.338-3.675 2.14-5.628 2.14-1.953 0-3.85-.802-5.627-2.14a15.262 15.262 0 0 1-1.7-1.494 11.3 11.3 0 0 1-.696-.766.684.684 0 0 1 0-.862c.142-.176.379-.443.696-.766a15.262 15.262 0 0 1 1.7-1.494C5.536 1.282 7.433.48 9.386.48c1.953 0 3.85.802 5.628 2.14.625.471 1.195.98 1.7 1.494.317.323.553.59.695.766l-.289.233.289-.233zm-2.842-1.666c-1.66-1.25-3.413-1.991-5.18-1.991-1.768 0-3.522.741-5.181 1.991C3.2 3.971 2.429 4.751 1.97 5.311c.458.56 1.23 1.34 2.235 2.097 1.66 1.25 3.413 1.99 5.18 1.99 1.768 0 3.521-.74 5.18-1.99 1.005-.757 1.778-1.537 2.236-2.097-.458-.56-1.23-1.34-2.235-2.097zm2.553 1.9l-.289.233.29-.234zm-.289.16l-.03.037.03.036a.059.059 0 0 1 0-.072z"></path><path d="M9.386 7.54c-1.255 0-2.276-1-2.276-2.229 0-1.23 1.021-2.23 2.276-2.23s2.276 1 2.276 2.23-1.02 2.23-2.276 2.23m0-5.097c-1.613 0-2.926 1.286-2.926 2.867 0 1.58 1.313 2.867 2.926 2.867 1.614 0 2.927-1.286 2.927-2.867 0-1.58-1.313-2.867-2.927-2.867"></path><path d="M9.386 3.718a.322.322 0 0 0-.325.318c0 .177.146.319.325.319.538 0 .976.43.976.956a.967.967 0 0 1-.976.956.967.967 0 0 1-.975-.956.322.322 0 0 0-.325-.319.322.322 0 0 0-.326.319c0 .878.73 1.593 1.626 1.593.897 0 1.626-.715 1.626-1.593s-.73-1.593-1.626-1.593"></path></g></svg><span>2255</span></div></div></div></div><div class="css-1gtwocl"><div class="css-1kcdhc3"><div class="css-cuzej8"><div class="css-12h9n7t"><a href="/launchdarkly/redux-scaling-launchdarkly-from-4-to-200-billion-feature-flags-daily">Redux: Scaling LaunchDarkly From 4 to 200 Billion Feature Flag...</a></div></div><div class="css-m2gwm">Mar 12 2019 at 3:11PM</div><div class="css-14kdfdp"><div class="lazyload-wrapper"><div class="lazyload-placeholder"></div></div><p>LaunchDarkly</p></div></div><div class="css-lscypq"><div class="css-12alag6"><span class="css-10hy8cb"><a class="css-1pwtf47"><span title="JavaScript" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/1209/javascript.jpeg" alt="JavaScript" class="css-4lwqz5"/></span></a><a class="css-1pwtf47"><span title="React" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/1020/OYIaJ1KK.png" alt="React" class="css-4lwqz5"/></span></a><a class="css-1pwtf47"><span title="PostgreSQL" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/1028/ASOhU5xJ.png" alt="PostgreSQL" class="css-4lwqz5"/></span></a></span><span class="css-pvufaf">+<!-- -->23</span></div><div class="css-maw68b"><div class="favourites"><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 14 14"><path fill="none" fill-rule="evenodd" stroke="#ADADAD" stroke-width="1.166" d="M12.045 6.038H8.038l-.137-.389-1.296-3.673L5.17 6.038H1.165L4.488 8.65l-.13.389-1.284 3.853 3.53-2.59.346.253 3.185 2.337L8.721 8.65l.323-.254 3-2.358zm-11.58-.55zm12.28 0z"></path></svg> <span>10</span></div><div class="views"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="11" viewBox="0 0 18 11"><g fill="#ADADAD" fill-rule="evenodd"><path fill-rule="nonzero" stroke="#ADADAD" stroke-width=".533" d="M17.409 4.88a.684.684 0 0 1 0 .862c-.142.176-.378.443-.695.766a15.262 15.262 0 0 1-1.7 1.494c-1.777 1.338-3.675 2.14-5.628 2.14-1.953 0-3.85-.802-5.627-2.14a15.262 15.262 0 0 1-1.7-1.494 11.3 11.3 0 0 1-.696-.766.684.684 0 0 1 0-.862c.142-.176.379-.443.696-.766a15.262 15.262 0 0 1 1.7-1.494C5.536 1.282 7.433.48 9.386.48c1.953 0 3.85.802 5.628 2.14.625.471 1.195.98 1.7 1.494.317.323.553.59.695.766l-.289.233.289-.233zm-2.842-1.666c-1.66-1.25-3.413-1.991-5.18-1.991-1.768 0-3.522.741-5.181 1.991C3.2 3.971 2.429 4.751 1.97 5.311c.458.56 1.23 1.34 2.235 2.097 1.66 1.25 3.413 1.99 5.18 1.99 1.768 0 3.521-.74 5.18-1.99 1.005-.757 1.778-1.537 2.236-2.097-.458-.56-1.23-1.34-2.235-2.097zm2.553 1.9l-.289.233.29-.234zm-.289.16l-.03.037.03.036a.059.059 0 0 1 0-.072z"></path><path d="M9.386 7.54c-1.255 0-2.276-1-2.276-2.229 0-1.23 1.021-2.23 2.276-2.23s2.276 1 2.276 2.23-1.02 2.23-2.276 2.23m0-5.097c-1.613 0-2.926 1.286-2.926 2.867 0 1.58 1.313 2.867 2.926 2.867 1.614 0 2.927-1.286 2.927-2.867 0-1.58-1.313-2.867-2.927-2.867"></path><path d="M9.386 3.718a.322.322 0 0 0-.325.318c0 .177.146.319.325.319.538 0 .976.43.976.956a.967.967 0 0 1-.976.956.967.967 0 0 1-.975-.956.322.322 0 0 0-.325-.319.322.322 0 0 0-.326.319c0 .878.73 1.593 1.626 1.593.897 0 1.626-.715 1.626-1.593s-.73-1.593-1.626-1.593"></path></g></svg><span>6147</span></div></div></div></div><div class="css-1gtwocl"><div class="css-1kcdhc3"><div class="css-cuzej8"><div class="css-12h9n7t"><a href="/heap/how-heap-built-an-analytics-platform-that-auto-tracks-every-user-event">How Heap Built an Analytics Platform that Auto-Tracks Every Us...</a></div></div><div class="css-m2gwm">Jun 14 2018 at 2:23AM</div><div class="css-14kdfdp"><div class="lazyload-wrapper"><div class="lazyload-placeholder"></div></div><p>Heap</p></div></div><div class="css-lscypq"><div class="css-12alag6"><span class="css-10hy8cb"><a class="css-1pwtf47"><span title="GitHub" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/27/default_869c34d29acc794d60ecdd5d2b5bfc042a80a4ec.jpg" alt="GitHub" class="css-4lwqz5"/></span></a><a class="css-1pwtf47"><span title="Node.js" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/1011/n1JRsFeB_400x400.png" alt="Node.js" class="css-4lwqz5"/></span></a><a class="css-1pwtf47"><span title="React" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/1020/OYIaJ1KK.png" alt="React" class="css-4lwqz5"/></span></a></span><span class="css-pvufaf">+<!-- -->13</span></div><div class="css-maw68b"><div class="favourites"><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 14 14"><path fill="none" fill-rule="evenodd" stroke="#ADADAD" stroke-width="1.166" d="M12.045 6.038H8.038l-.137-.389-1.296-3.673L5.17 6.038H1.165L4.488 8.65l-.13.389-1.284 3.853 3.53-2.59.346.253 3.185 2.337L8.721 8.65l.323-.254 3-2.358zm-11.58-.55zm12.28 0z"></path></svg> <span>14</span></div><div class="views"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="11" viewBox="0 0 18 11"><g fill="#ADADAD" fill-rule="evenodd"><path fill-rule="nonzero" stroke="#ADADAD" stroke-width=".533" d="M17.409 4.88a.684.684 0 0 1 0 .862c-.142.176-.378.443-.695.766a15.262 15.262 0 0 1-1.7 1.494c-1.777 1.338-3.675 2.14-5.628 2.14-1.953 0-3.85-.802-5.627-2.14a15.262 15.262 0 0 1-1.7-1.494 11.3 11.3 0 0 1-.696-.766.684.684 0 0 1 0-.862c.142-.176.379-.443.696-.766a15.262 15.262 0 0 1 1.7-1.494C5.536 1.282 7.433.48 9.386.48c1.953 0 3.85.802 5.628 2.14.625.471 1.195.98 1.7 1.494.317.323.553.59.695.766l-.289.233.289-.233zm-2.842-1.666c-1.66-1.25-3.413-1.991-5.18-1.991-1.768 0-3.522.741-5.181 1.991C3.2 3.971 2.429 4.751 1.97 5.311c.458.56 1.23 1.34 2.235 2.097 1.66 1.25 3.413 1.99 5.18 1.99 1.768 0 3.521-.74 5.18-1.99 1.005-.757 1.778-1.537 2.236-2.097-.458-.56-1.23-1.34-2.235-2.097zm2.553 1.9l-.289.233.29-.234zm-.289.16l-.03.037.03.036a.059.059 0 0 1 0-.072z"></path><path d="M9.386 7.54c-1.255 0-2.276-1-2.276-2.229 0-1.23 1.021-2.23 2.276-2.23s2.276 1 2.276 2.23-1.02 2.23-2.276 2.23m0-5.097c-1.613 0-2.926 1.286-2.926 2.867 0 1.58 1.313 2.867 2.926 2.867 1.614 0 2.927-1.286 2.927-2.867 0-1.58-1.313-2.867-2.927-2.867"></path><path d="M9.386 3.718a.322.322 0 0 0-.325.318c0 .177.146.319.325.319.538 0 .976.43.976.956a.967.967 0 0 1-.976.956.967.967 0 0 1-.975-.956.322.322 0 0 0-.325-.319.322.322 0 0 0-.326.319c0 .878.73 1.593 1.626 1.593.897 0 1.626-.715 1.626-1.593s-.73-1.593-1.626-1.593"></path></g></svg><span>9718</span></div></div></div></div><div class="css-1gtwocl"><div class="css-1kcdhc3"><div class="css-cuzej8"><div class="css-12h9n7t"><a href="/stitch/how-stitch-consolidates-a-billion-records-per-day">How Stitch Consolidates A Billion Records Per Day</a></div></div><div class="css-m2gwm">Sep 28 2017 at 4:58AM</div><div class="css-14kdfdp"><div class="lazyload-wrapper"><div class="lazyload-placeholder"></div></div><p>Stitch</p></div></div><div class="css-lscypq"><div class="css-12alag6"><span class="css-10hy8cb"><a class="css-1pwtf47"><span title="GitHub" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/27/default_869c34d29acc794d60ecdd5d2b5bfc042a80a4ec.jpg" alt="GitHub" class="css-4lwqz5"/></span></a><a class="css-1pwtf47"><span title="Python" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/993/pUBY5pVj.png" alt="Python" class="css-4lwqz5"/></span></a><a class="css-1pwtf47"><span title="Git" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/1046/git.png" alt="Git" class="css-4lwqz5"/></span></a></span><span class="css-pvufaf">+<!-- -->22</span></div><div class="css-maw68b"><div class="favourites"><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 14 14"><path fill="none" fill-rule="evenodd" stroke="#ADADAD" stroke-width="1.166" d="M12.045 6.038H8.038l-.137-.389-1.296-3.673L5.17 6.038H1.165L4.488 8.65l-.13.389-1.284 3.853 3.53-2.59.346.253 3.185 2.337L8.721 8.65l.323-.254 3-2.358zm-11.58-.55zm12.28 0z"></path></svg> <span>17</span></div><div class="views"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="11" viewBox="0 0 18 11"><g fill="#ADADAD" fill-rule="evenodd"><path fill-rule="nonzero" stroke="#ADADAD" stroke-width=".533" d="M17.409 4.88a.684.684 0 0 1 0 .862c-.142.176-.378.443-.695.766a15.262 15.262 0 0 1-1.7 1.494c-1.777 1.338-3.675 2.14-5.628 2.14-1.953 0-3.85-.802-5.627-2.14a15.262 15.262 0 0 1-1.7-1.494 11.3 11.3 0 0 1-.696-.766.684.684 0 0 1 0-.862c.142-.176.379-.443.696-.766a15.262 15.262 0 0 1 1.7-1.494C5.536 1.282 7.433.48 9.386.48c1.953 0 3.85.802 5.628 2.14.625.471 1.195.98 1.7 1.494.317.323.553.59.695.766l-.289.233.289-.233zm-2.842-1.666c-1.66-1.25-3.413-1.991-5.18-1.991-1.768 0-3.522.741-5.181 1.991C3.2 3.971 2.429 4.751 1.97 5.311c.458.56 1.23 1.34 2.235 2.097 1.66 1.25 3.413 1.99 5.18 1.99 1.768 0 3.521-.74 5.18-1.99 1.005-.757 1.778-1.537 2.236-2.097-.458-.56-1.23-1.34-2.235-2.097zm2.553 1.9l-.289.233.29-.234zm-.289.16l-.03.037.03.036a.059.059 0 0 1 0-.072z"></path><path d="M9.386 7.54c-1.255 0-2.276-1-2.276-2.229 0-1.23 1.021-2.23 2.276-2.23s2.276 1 2.276 2.23-1.02 2.23-2.276 2.23m0-5.097c-1.613 0-2.926 1.286-2.926 2.867 0 1.58 1.313 2.867 2.926 2.867 1.614 0 2.927-1.286 2.927-2.867 0-1.58-1.313-2.867-2.927-2.867"></path><path d="M9.386 3.718a.322.322 0 0 0-.325.318c0 .177.146.319.325.319.538 0 .976.43.976.956a.967.967 0 0 1-.976.956.967.967 0 0 1-.975-.956.322.322 0 0 0-.325-.319.322.322 0 0 0-.326.319c0 .878.73 1.593 1.626 1.593.897 0 1.626-.715 1.626-1.593s-.73-1.593-1.626-1.593"></path></g></svg><span>13848</span></div></div></div></div><div class="css-1gtwocl"><div class="css-1kcdhc3"><div class="css-cuzej8"><div class="css-12h9n7t"><a href="/launchdarkly/how-launchdarkly-serves-over-4-billion-feature-flags-daily">How LaunchDarkly Serves Over 4 Billion Feature Flags Daily</a></div></div><div class="css-m2gwm">Sep 9 2016 at 2:06AM</div><div class="css-14kdfdp"><div class="lazyload-wrapper"><div class="lazyload-placeholder"></div></div><p>LaunchDarkly</p></div></div><div class="css-lscypq"><div class="css-12alag6"><span class="css-10hy8cb"><a class="css-1pwtf47"><span title="GitHub" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/27/default_869c34d29acc794d60ecdd5d2b5bfc042a80a4ec.jpg" alt="GitHub" class="css-4lwqz5"/></span></a><a class="css-1pwtf47"><span title="Git" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/1046/git.png" alt="Git" class="css-4lwqz5"/></span></a><a class="css-1pwtf47"><span title="Slack" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/675/RNiSRYOF_400x400.jpg" alt="Slack" class="css-4lwqz5"/></span></a></span><span class="css-pvufaf">+<!-- -->30</span></div><div class="css-maw68b"><div class="favourites"><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 14 14"><path fill="none" fill-rule="evenodd" stroke="#ADADAD" stroke-width="1.166" d="M12.045 6.038H8.038l-.137-.389-1.296-3.673L5.17 6.038H1.165L4.488 8.65l-.13.389-1.284 3.853 3.53-2.59.346.253 3.185 2.337L8.721 8.65l.323-.254 3-2.358zm-11.58-.55zm12.28 0z"></path></svg> <span>27</span></div><div class="views"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="11" viewBox="0 0 18 11"><g fill="#ADADAD" fill-rule="evenodd"><path fill-rule="nonzero" stroke="#ADADAD" stroke-width=".533" d="M17.409 4.88a.684.684 0 0 1 0 .862c-.142.176-.378.443-.695.766a15.262 15.262 0 0 1-1.7 1.494c-1.777 1.338-3.675 2.14-5.628 2.14-1.953 0-3.85-.802-5.627-2.14a15.262 15.262 0 0 1-1.7-1.494 11.3 11.3 0 0 1-.696-.766.684.684 0 0 1 0-.862c.142-.176.379-.443.696-.766a15.262 15.262 0 0 1 1.7-1.494C5.536 1.282 7.433.48 9.386.48c1.953 0 3.85.802 5.628 2.14.625.471 1.195.98 1.7 1.494.317.323.553.59.695.766l-.289.233.289-.233zm-2.842-1.666c-1.66-1.25-3.413-1.991-5.18-1.991-1.768 0-3.522.741-5.181 1.991C3.2 3.971 2.429 4.751 1.97 5.311c.458.56 1.23 1.34 2.235 2.097 1.66 1.25 3.413 1.99 5.18 1.99 1.768 0 3.521-.74 5.18-1.99 1.005-.757 1.778-1.537 2.236-2.097-.458-.56-1.23-1.34-2.235-2.097zm2.553 1.9l-.289.233.29-.234zm-.289.16l-.03.037.03.036a.059.059 0 0 1 0-.072z"></path><path d="M9.386 7.54c-1.255 0-2.276-1-2.276-2.229 0-1.23 1.021-2.23 2.276-2.23s2.276 1 2.276 2.23-1.02 2.23-2.276 2.23m0-5.097c-1.613 0-2.926 1.286-2.926 2.867 0 1.58 1.313 2.867 2.926 2.867 1.614 0 2.927-1.286 2.927-2.867 0-1.58-1.313-2.867-2.927-2.867"></path><path d="M9.386 3.718a.322.322 0 0 0-.325.318c0 .177.146.319.325.319.538 0 .976.43.976.956a.967.967 0 0 1-.976.956.967.967 0 0 1-.975-.956.322.322 0 0 0-.325-.319.322.322 0 0 0-.326.319c0 .878.73 1.593 1.626 1.593.897 0 1.626-.715 1.626-1.593s-.73-1.593-1.626-1.593"></path></g></svg><span>17103</span></div></div></div></div><div class="css-1gtwocl"><div class="css-1kcdhc3"><div class="css-cuzej8"><div class="css-12h9n7t"><a href="/glitch/the-hyperdev-tech-stack-powering-over-1m-containers">The HyperDev Tech Stack: Powering Over 1M Containers</a></div></div><div class="css-m2gwm">Aug 5 2016 at 4:07AM</div><div class="css-14kdfdp"><div class="lazyload-wrapper"><div class="lazyload-placeholder"></div></div><p>Glitch</p></div></div><div class="css-lscypq"><div class="css-12alag6"><span class="css-10hy8cb"><a class="css-1pwtf47"><span title="JavaScript" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/1209/javascript.jpeg" alt="JavaScript" class="css-4lwqz5"/></span></a><a class="css-1pwtf47"><span title="GitHub" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/27/default_869c34d29acc794d60ecdd5d2b5bfc042a80a4ec.jpg" alt="GitHub" class="css-4lwqz5"/></span></a><a class="css-1pwtf47"><span title="Git" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/1046/git.png" alt="Git" class="css-4lwqz5"/></span></a></span><span class="css-pvufaf">+<!-- -->33</span></div><div class="css-maw68b"><div class="favourites"><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 14 14"><path fill="none" fill-rule="evenodd" stroke="#ADADAD" stroke-width="1.166" d="M12.045 6.038H8.038l-.137-.389-1.296-3.673L5.17 6.038H1.165L4.488 8.65l-.13.389-1.284 3.853 3.53-2.59.346.253 3.185 2.337L8.721 8.65l.323-.254 3-2.358zm-11.58-.55zm12.28 0z"></path></svg> <span>20</span></div><div class="views"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="11" viewBox="0 0 18 11"><g fill="#ADADAD" fill-rule="evenodd"><path fill-rule="nonzero" stroke="#ADADAD" stroke-width=".533" d="M17.409 4.88a.684.684 0 0 1 0 .862c-.142.176-.378.443-.695.766a15.262 15.262 0 0 1-1.7 1.494c-1.777 1.338-3.675 2.14-5.628 2.14-1.953 0-3.85-.802-5.627-2.14a15.262 15.262 0 0 1-1.7-1.494 11.3 11.3 0 0 1-.696-.766.684.684 0 0 1 0-.862c.142-.176.379-.443.696-.766a15.262 15.262 0 0 1 1.7-1.494C5.536 1.282 7.433.48 9.386.48c1.953 0 3.85.802 5.628 2.14.625.471 1.195.98 1.7 1.494.317.323.553.59.695.766l-.289.233.289-.233zm-2.842-1.666c-1.66-1.25-3.413-1.991-5.18-1.991-1.768 0-3.522.741-5.181 1.991C3.2 3.971 2.429 4.751 1.97 5.311c.458.56 1.23 1.34 2.235 2.097 1.66 1.25 3.413 1.99 5.18 1.99 1.768 0 3.521-.74 5.18-1.99 1.005-.757 1.778-1.537 2.236-2.097-.458-.56-1.23-1.34-2.235-2.097zm2.553 1.9l-.289.233.29-.234zm-.289.16l-.03.037.03.036a.059.059 0 0 1 0-.072z"></path><path d="M9.386 7.54c-1.255 0-2.276-1-2.276-2.229 0-1.23 1.021-2.23 2.276-2.23s2.276 1 2.276 2.23-1.02 2.23-2.276 2.23m0-5.097c-1.613 0-2.926 1.286-2.926 2.867 0 1.58 1.313 2.867 2.926 2.867 1.614 0 2.927-1.286 2.927-2.867 0-1.58-1.313-2.867-2.927-2.867"></path><path d="M9.386 3.718a.322.322 0 0 0-.325.318c0 .177.146.319.325.319.538 0 .976.43.976.956a.967.967 0 0 1-.976.956.967.967 0 0 1-.975-.956.322.322 0 0 0-.325-.319.322.322 0 0 0-.326.319c0 .878.73 1.593 1.626 1.593.897 0 1.626-.715 1.626-1.593s-.73-1.593-1.626-1.593"></path></g></svg><span>1892</span></div></div></div></div><div class="css-1gtwocl"><div class="css-1kcdhc3"><div class="css-cuzej8"><div class="css-12h9n7t"><a href="/opsee-co/how-opsee-chose-a-container-orchestration-platform">How Opsee Chose A Container Orchestration Platform</a></div></div><div class="css-m2gwm">May 27 2016 at 5:01AM</div><div class="css-14kdfdp"><div class="lazyload-wrapper"><div class="lazyload-placeholder"></div></div><p>Opsee Co</p></div></div><div class="css-lscypq"><div class="css-12alag6"><span class="css-10hy8cb"><a class="css-1pwtf47"><span title="GitHub" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/27/default_869c34d29acc794d60ecdd5d2b5bfc042a80a4ec.jpg" alt="GitHub" class="css-4lwqz5"/></span></a><a class="css-1pwtf47"><span title="Docker" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/586/n4u37v9t_400x400.png" alt="Docker" class="css-4lwqz5"/></span></a><a class="css-1pwtf47"><span title="Amazon EC2" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/18/amazon-ec2.png" alt="Amazon EC2" class="css-4lwqz5"/></span></a></span><span class="css-pvufaf">+<!-- -->23</span></div><div class="css-maw68b"><div class="favourites"><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 14 14"><path fill="none" fill-rule="evenodd" stroke="#ADADAD" stroke-width="1.166" d="M12.045 6.038H8.038l-.137-.389-1.296-3.673L5.17 6.038H1.165L4.488 8.65l-.13.389-1.284 3.853 3.53-2.59.346.253 3.185 2.337L8.721 8.65l.323-.254 3-2.358zm-11.58-.55zm12.28 0z"></path></svg> <span>12</span></div><div class="views"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="11" viewBox="0 0 18 11"><g fill="#ADADAD" fill-rule="evenodd"><path fill-rule="nonzero" stroke="#ADADAD" stroke-width=".533" d="M17.409 4.88a.684.684 0 0 1 0 .862c-.142.176-.378.443-.695.766a15.262 15.262 0 0 1-1.7 1.494c-1.777 1.338-3.675 2.14-5.628 2.14-1.953 0-3.85-.802-5.627-2.14a15.262 15.262 0 0 1-1.7-1.494 11.3 11.3 0 0 1-.696-.766.684.684 0 0 1 0-.862c.142-.176.379-.443.696-.766a15.262 15.262 0 0 1 1.7-1.494C5.536 1.282 7.433.48 9.386.48c1.953 0 3.85.802 5.628 2.14.625.471 1.195.98 1.7 1.494.317.323.553.59.695.766l-.289.233.289-.233zm-2.842-1.666c-1.66-1.25-3.413-1.991-5.18-1.991-1.768 0-3.522.741-5.181 1.991C3.2 3.971 2.429 4.751 1.97 5.311c.458.56 1.23 1.34 2.235 2.097 1.66 1.25 3.413 1.99 5.18 1.99 1.768 0 3.521-.74 5.18-1.99 1.005-.757 1.778-1.537 2.236-2.097-.458-.56-1.23-1.34-2.235-2.097zm2.553 1.9l-.289.233.29-.234zm-.289.16l-.03.037.03.036a.059.059 0 0 1 0-.072z"></path><path d="M9.386 7.54c-1.255 0-2.276-1-2.276-2.229 0-1.23 1.021-2.23 2.276-2.23s2.276 1 2.276 2.23-1.02 2.23-2.276 2.23m0-5.097c-1.613 0-2.926 1.286-2.926 2.867 0 1.58 1.313 2.867 2.926 2.867 1.614 0 2.927-1.286 2.927-2.867 0-1.58-1.313-2.867-2.927-2.867"></path><path d="M9.386 3.718a.322.322 0 0 0-.325.318c0 .177.146.319.325.319.538 0 .976.43.976.956a.967.967 0 0 1-.976.956.967.967 0 0 1-.975-.956.322.322 0 0 0-.325-.319.322.322 0 0 0-.326.319c0 .878.73 1.593 1.626 1.593.897 0 1.626-.715 1.626-1.593s-.73-1.593-1.626-1.593"></path></g></svg><span>6431</span></div></div></div></div><div class="css-1gtwocl"><div class="css-1kcdhc3"><div class="css-cuzej8"><div class="css-12h9n7t"><a href="/zapier/scaling-zapier-to-automate-billions-of-tasks">Scaling Zapier to Automate Billions of Tasks</a></div></div><div class="css-m2gwm">Feb 4 2016 at 6:44PM</div><div class="css-14kdfdp"><div class="lazyload-wrapper"><div class="lazyload-placeholder"></div></div><p>Zapier</p></div></div><div class="css-lscypq"><div class="css-12alag6"><span class="css-10hy8cb"><a class="css-1pwtf47"><span title="JavaScript" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/1209/javascript.jpeg" alt="JavaScript" class="css-4lwqz5"/></span></a><a class="css-1pwtf47"><span title="GitHub" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/27/default_869c34d29acc794d60ecdd5d2b5bfc042a80a4ec.jpg" alt="GitHub" class="css-4lwqz5"/></span></a><a class="css-1pwtf47"><span title="Python" class="css-13fg6qi service"><img src="https://img.stackshare.io/service/993/pUBY5pVj.png" alt="Python" class="css-4lwqz5"/></span></a></span><span class="css-pvufaf">+<!-- -->42</span></div><div class="css-maw68b"><div class="favourites"><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 14 14"><path fill="none" fill-rule="evenodd" stroke="#ADADAD" stroke-width="1.166" d="M12.045 6.038H8.038l-.137-.389-1.296-3.673L5.17 6.038H1.165L4.488 8.65l-.13.389-1.284 3.853 3.53-2.59.346.253 3.185 2.337L8.721 8.65l.323-.254 3-2.358zm-11.58-.55zm12.28 0z"></path></svg> <span>53</span></div><div class="views"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="11" viewBox="0 0 18 11"><g fill="#ADADAD" fill-rule="evenodd"><path fill-rule="nonzero" stroke="#ADADAD" stroke-width=".533" d="M17.409 4.88a.684.684 0 0 1 0 .862c-.142.176-.378.443-.695.766a15.262 15.262 0 0 1-1.7 1.494c-1.777 1.338-3.675 2.14-5.628 2.14-1.953 0-3.85-.802-5.627-2.14a15.262 15.262 0 0 1-1.7-1.494 11.3 11.3 0 0 1-.696-.766.684.684 0 0 1 0-.862c.142-.176.379-.443.696-.766a15.262 15.262 0 0 1 1.7-1.494C5.536 1.282 7.433.48 9.386.48c1.953 0 3.85.802 5.628 2.14.625.471 1.195.98 1.7 1.494.317.323.553.59.695.766l-.289.233.289-.233zm-2.842-1.666c-1.66-1.25-3.413-1.991-5.18-1.991-1.768 0-3.522.741-5.181 1.991C3.2 3.971 2.429 4.751 1.97 5.311c.458.56 1.23 1.34 2.235 2.097 1.66 1.25 3.413 1.99 5.18 1.99 1.768 0 3.521-.74 5.18-1.99 1.005-.757 1.778-1.537 2.236-2.097-.458-.56-1.23-1.34-2.235-2.097zm2.553 1.9l-.289.233.29-.234zm-.289.16l-.03.037.03.036a.059.059 0 0 1 0-.072z"></path><path d="M9.386 7.54c-1.255 0-2.276-1-2.276-2.229 0-1.23 1.021-2.23 2.276-2.23s2.276 1 2.276 2.23-1.02 2.23-2.276 2.23m0-5.097c-1.613 0-2.926 1.286-2.926 2.867 0 1.58 1.313 2.867 2.926 2.867 1.614 0 2.927-1.286 2.927-2.867 0-1.58-1.313-2.867-2.927-2.867"></path><path d="M9.386 3.718a.322.322 0 0 0-.325.318c0 .177.146.319.325.319.538 0 .976.43.976.956a.967.967 0 0 1-.976.956.967.967 0 0 1-.975-.956.322.322 0 0 0-.325-.319.322.322 0 0 0-.326.319c0 .878.73 1.593 1.626 1.593.897 0 1.626-.715 1.626-1.593s-.73-1.593-1.626-1.593"></path></g></svg><span>20832</span></div></div></div></div></div><div class="css-1i8b05s"><button class="css-1iqua1m">Sign up to see more</button></div></div><div id="alternatives" style="pointer-events:none;grid-column:span 3;display:block;height:182px;margin-top:-182px"></div><div style="border-bottom:none" class="css-5k0ecd"><div class="css-4d5oui"><div class="css-ptavxb">What are some alternatives to Ansible and Terraform?</div><div class="css-10pc7td"><div class="css-1ukyolz"><div class="css-1uackhz">Puppet Labs</div></div><div class="css-1ofkegx">Puppet is an automated administrative engine for your Linux, Unix, and Windows systems and performs administrative tasks (such as adding users, installing packages, and updating server configurations) based on a centralized specification.</div><div class="css-1ukyolz"><div class="css-1uackhz">Chef</div></div><div class="css-1ofkegx">Chef enables you to manage and scale cloud infrastructure with no downtime or interruptions. Freely move applications and configurations from one cloud to another. Chef is integrated with all major cloud providers including Amazon EC2, VMWare, IBM Smartcloud, Rackspace, OpenStack, Windows Azure, HP Cloud, Google Compute Engine, Joyent Cloud and others.</div><div class="css-1ukyolz"><div class="css-1uackhz">Salt</div></div><div class="css-1ofkegx">Salt is a new approach to infrastructure management. Easy enough to get running in minutes, scalable enough to manage tens of thousands of servers, and fast enough to communicate with them in seconds. Salt delivers a dynamic communication bus for infrastructures that can be used for orchestration, remote execution, configuration management and much more.</div><div class="css-1ukyolz"><div class="css-1uackhz">Jenkins</div></div><div class="css-1ofkegx">In a nutshell Jenkins CI is the leading open-source continuous integration server. Built with Java, it provides over 300 plugins to support building and testing virtually any project.</div><div class="css-1ukyolz"><div class="css-1uackhz">AWS CloudFormation</div></div><div class="css-1ofkegx">You can use AWS CloudFormation鈥檚 sample templates or create your own templates to describe the AWS resources, and any associated dependencies or runtime parameters, required to run your application. You don鈥檛 need to figure out the order in which AWS services need to be provisioned or the subtleties of how to make those dependencies work.</div></div><a data-testid="seeAllAlternativesLink" href="/terraform/alternatives" class="css-1xexurq">See all alternatives</a></div></div></div><aside class="css-1cqgl9p"><div class="css-p223ph"><div style="position:sticky;top:23%"><div class="css-81jah4"></div><div class="css-cn7d1w"><svg class="css-1fj3l7d" xmlns="http://www.w3.org/2000/svg" width="123" height="70" viewBox="0 0 123 70"><g fill="none" fill-rule="evenodd"><g fill="#008FF9" stroke="#008FF9" opacity=".74"><g stroke-width="2.207" opacity=".413"><path d="M62.27 24.009c6.068 0 11.004-4.937 11.004-11.005C73.274 6.937 68.338 2 62.27 2S51.266 6.937 51.266 13.004c0 6.068 4.936 11.005 11.004 11.005zm0-19.368c4.612 0 8.363 3.752 8.363 8.363 0 4.612-3.751 8.364-8.363 8.364-4.611 0-8.363-3.752-8.363-8.364 0-4.611 3.752-8.363 8.363-8.363zm-.579 24.58c-11.177 0-20.271 9.28-20.271 20.689 0 .73.58 1.32 1.294 1.32.714 0 1.294-.59 1.294-1.32 0-9.951 7.932-18.047 17.683-18.047 9.75 0 17.683 8.096 17.683 18.047 0 .73.58 1.32 1.294 1.32.714 0 1.294-.59 1.294-1.32 0-11.407-9.093-20.688-20.271-20.688z" opacity=".502"></path></g><g opacity=".266"><path stroke-width="1.927" d="M33.506 27.484c-5.323 0-9.653-4.33-9.653-9.653s4.33-9.653 9.653-9.653c5.322 0 9.653 4.33 9.653 9.653 0 5.322-4.33 9.653-9.653 9.653zm0-16.99c-4.045 0-7.336 3.292-7.336 7.337s3.29 7.336 7.336 7.336c4.045 0 7.336-3.291 7.336-7.336s-3.291-7.336-7.336-7.336z" opacity=".502"></path><path stroke-width="1.986" d="M42.973 33.722c9.802 2.263 15.898 12.243 13.588 22.246a1.176 1.176 0 0 1-1.402.896 1.176 1.176 0 0 1-.867-1.42c2.015-8.726-3.303-17.432-11.853-19.406-8.55-1.974-17.146 3.52-19.161 12.246a1.177 1.177 0 0 1-1.402.896 1.176 1.176 0 0 1-.867-1.42c2.31-10.003 12.162-16.3 21.964-14.038z" opacity=".502"></path></g><g opacity=".266"><path stroke-width="1.927" d="M90.263 27.484c5.323 0 9.653-4.33 9.653-9.653s-4.33-9.653-9.653-9.653c-5.322 0-9.653 4.33-9.653 9.653 0 5.322 4.33 9.653 9.653 9.653zm0-16.99c4.045 0 7.337 3.292 7.337 7.337s-3.292 7.336-7.337 7.336-7.336-3.291-7.336-7.336 3.291-7.336 7.336-7.336z" opacity=".502"></path><path stroke-width="1.986" d="M80.217 33.722c-9.802 2.263-15.898 12.243-13.588 22.246.147.64.775 1.041 1.402.896a1.176 1.176 0 0 0 .867-1.42c-2.015-8.726 3.303-17.432 11.853-19.406 8.55-1.974 17.146 3.52 19.161 12.246.148.64.776 1.041 1.402.896a1.176 1.176 0 0 0 .867-1.42c-2.31-10.003-12.162-16.3-21.964-14.038z" opacity=".502"></path></g><g stroke-width="1.413" opacity=".184"><path d="M111.547 31.915a7.05 7.05 0 0 0 7.042-7.042c0-3.884-3.159-7.043-7.042-7.043-3.885 0-7.043 3.16-7.043 7.043s3.16 7.042 7.043 7.042zm0-12.395a5.358 5.358 0 0 1 5.352 5.353c0 2.951-2.4 5.352-5.352 5.352a5.358 5.358 0 0 1-5.353-5.352 5.359 5.359 0 0 1 5.353-5.353zm-6.725 21.023a.815.815 0 0 1-1.119.139.75.75 0 0 1-.144-1.08c2.39-2.98 6.001-4.69 9.906-4.69 2.508 0 4.927.712 6.997 2.06a.753.753 0 0 1 .215 1.068.818.818 0 0 1-1.109.207 11.152 11.152 0 0 0-6.103-1.796c-3.406 0-6.557 1.492-8.642 4.092z" opacity=".502"></path></g><g stroke-width="1.413" opacity=".177"><path d="M10.871 31.915a7.05 7.05 0 0 1-7.042-7.042c0-3.884 3.159-7.043 7.042-7.043 3.885 0 7.043 3.16 7.043 7.043s-3.16 7.042-7.043 7.042zm0-12.395a5.358 5.358 0 0 0-5.352 5.353c0 2.951 2.4 5.352 5.352 5.352 2.952 0 5.353-2.4 5.353-5.352a5.359 5.359 0 0 0-5.353-5.353zM3.036 40.543a.818.818 0 0 1-1.121.139.751.751 0 0 1-.144-1.08c2.39-2.98 6.002-4.69 9.907-4.69 2.507 0 4.927.712 6.996 2.06a.751.751 0 0 1 .215 1.068.818.818 0 0 1-1.109.207 11.147 11.147 0 0 0-6.102-1.797c-3.407 0-6.557 1.492-8.643 4.092z" opacity=".502"></path></g></g><g><path fill="#008FF9" stroke="#008FF9" stroke-width=".842" d="M61.047 16.51c-6.44 3.802-13.035 6.6-20.164 8.553a2.453 2.453 0 0 0-1.302.88 2.452 2.452 0 0 0-.504 1.487v9.447c0 11.603 5.26 19.355 10.029 24.121.827.81 1.69 1.57 2.569 2.274 2.796 2.241 5.735 3.912 7.985 4.731 1.047.382 1.953.58 2.636.58.684 0 1.59-.198 2.637-.58 2.19-.797 5.033-2.401 7.762-4.554a34.855 34.855 0 0 0 2.813-2.472c4.57-4.487 10.007-12.303 10.007-24.1V27.43c0-.603-.16-1.098-.46-1.493-.297-.388-.736-.684-1.346-.874-6.932-1.899-13.906-4.857-20.166-8.553a2.454 2.454 0 0 0-2.495 0z"></path><path fill="#FFF" stroke="#008FF9" stroke-width=".605" d="M62.079 18.257c-6.664 3.935-13.492 6.82-20.974 8.945v9.675c0 10.19 4.31 17.217 8.465 21.7V43.259c0-.483.197-.922.515-1.24a1.75 1.75 0 0 1 1.24-.514h2.21v-1.447c0-2.426.97-4.627 2.538-6.222 1.566-1.591 3.727-2.579 6.111-2.579a8.55 8.55 0 0 1 6.112 2.58 8.863 8.863 0 0 1 2.539 6.227v1.441h2.43c.484 0 .923.197 1.24.515.318.317.515.756.515 1.24v15.31c4.065-4.333 8.465-11.397 8.465-21.694l-.092-9.795-1.11-.31c-6.809-1.951-13.627-4.887-20.204-8.515zm.105 15.133c-1.81 0-3.451.748-4.64 1.956a6.7 6.7 0 0 0-1.921 4.71v1.448h13.123v-1.447a6.697 6.697 0 0 0-1.922-4.711 6.491 6.491 0 0 0-4.64-1.956z"></path><path fill="#FFF" d="M83.182 36.877c0 9.758-3.988 16.585-7.86 20.916V43.258a2.059 2.059 0 0 0-2.056-2.056h-2.129v-1.139c0-5.021-4.014-9.11-8.953-9.11-4.938 0-8.952 4.089-8.952 9.104v1.145h-1.908a2.059 2.059 0 0 0-2.056 2.056v14.535a4.32 4.32 0 0 1-.11-.122c-3.837-4.336-7.75-11.129-7.75-20.794V27.43c0-.055.037-.103.09-.118 7.331-2.009 14.114-4.885 20.735-8.794.02-.012.04-.017.062-.017s.043.005.062.017c6.437 3.8 13.607 6.84 20.735 8.794.053.015.09.063.09.118v9.447z"></path><path fill="#FFF" d="M67.197 57.374c-.6 0-1.1-.413-1.212-.96 0 0-.032-.23 0-.463.112-.546.613-.96 1.211-.96.681 0 1.235.535 1.235 1.192 0 .657-.554 1.191-1.235 1.191m-10.759-4.22c-.68 0-1.234-.534-1.234-1.19 0-.658.553-1.192 1.234-1.192.681 0 1.235.534 1.235 1.191s-.554 1.192-1.235 1.192m9.539-5.687v-.008c.112-.546.612-.96 1.21-.96.681 0 1.235.534 1.235 1.192 0 .657-.554 1.191-1.234 1.191-.6 0-1.1-.413-1.211-.96-.028-.21 0-.455 0-.455m1.22 6.446c-1.07 0-1.972.69-2.256 1.635h-1.393l-2.175-3.612v-.006l2.172-3.605h1.386c.285.944 1.187 1.634 2.257 1.634 1.297 0 2.35-1.016 2.35-2.268 0-1.253-1.053-2.269-2.35-2.269-1.07 0-1.972.69-2.257 1.634h-2.113l-.021-.012-2.56 4.252-.02.032h-1.521c-.285-.944-1.187-1.634-2.257-1.634-1.297 0-2.35 1.016-2.35 2.268 0 1.253 1.053 2.268 2.35 2.268 1.07 0 1.972-.69 2.257-1.634h1.555l2.546 4.227.011-.007h2.134c.284.944 1.187 1.634 2.256 1.634 1.298 0 2.35-1.016 2.35-2.268 0-1.253-1.052-2.269-2.35-2.269m1.246-12.712H55.925v-1.145c0-3.511 2.806-6.364 6.26-6.364 3.452 0 6.258 2.853 6.258 6.364v1.145z"></path></g></g></svg><div class="css-i272tr">See all the technologies you鈥檙e using across your company.<!-- --> </div><a href="/manage-companies/enterprise" class="css-56ijgy">Sign up for StackShare Enterprise</a><a href="/enterprise" class="css-1l7t0dr">Learn More</a></div></div></div></aside></div></main><div class="css-69zjs9"><div class="css-8a04gk"><div class="css-1m38k02"><h2 class="css-162qu2y">Related Comparisons</h2><a href="/stackups/ansible-vs-chef-vs-puppet" title="Ansible vs Chef vs Puppet Labs" class="css-p797gu">Ansible vs Chef vs Puppet Labs</a><a href="/stackups/ansible-vs-chef" title="Ansible vs Chef" class="css-p797gu">Ansible vs Chef</a><a href="/stackups/packer-vs-terraform" title="Packer vs Terraform" class="css-p797gu">Packer vs Terraform</a><a href="/stackups/ansible-vs-fabric" title="Ansible vs Fabric" class="css-p797gu">Ansible vs Fabric</a><a href="/stackups/ansible-vs-capistrano-vs-chef" title="Ansible vs Capistrano vs Chef" class="css-p797gu">Ansible vs Capistrano vs Chef</a></div><div class="css-1m38k02"><h2 class="css-162qu2y">Trending Comparisons</h2><a href="/stackups/django-vs-laravel-vs-nodejs" title="Django vs Laravel vs Node.js" class="css-p797gu">Django vs Laravel vs Node.js</a><a href="/stackups/bootstrap-vs-foundation-vs-material-ui" title="Bootstrap vs Foundation vs Material-UI" class="css-p797gu">Bootstrap vs Foundation vs Material-UI</a><a href="/stackups/nodejs-vs-spring-boot" title="Node.js vs Spring Boot" class="css-p797gu">Node.js vs Spring Boot</a><a href="/stackups/flyway-vs-liquibase" title="Flyway vs Liquibase" class="css-p797gu">Flyway vs Liquibase</a><a href="/stackups/aws-codecommit-vs-bitbucket-vs-github" title="AWS CodeCommit vs Bitbucket vs GitHub" class="css-p797gu">AWS CodeCommit vs Bitbucket vs GitHub</a></div><div class="css-1m38k02"><h2 class="css-162qu2y">Top Comparisons</h2><a href="/stackups/bitbucket-vs-github-vs-gitlab" title="Bitbucket vs GitHub vs GitLab" class="css-p797gu">Bitbucket vs GitHub vs GitLab</a><a href="/stackups/bootstrap-vs-materialize" title="Bootstrap vs Materialize" class="css-p797gu">Bootstrap vs Materialize</a><a href="/stackups/hipchat-vs-mattermost-vs-slack" title="HipChat vs Mattermost vs Slack" class="css-p797gu">HipChat vs Mattermost vs Slack</a><a href="/stackups/postman-vs-swagger-ui" title="Postman vs Swagger UI" class="css-p797gu">Postman vs Swagger UI</a></div></div></div></div></div> <script> renderComponent('Stackup','Stackup-react-component-f8f92b7a-a991-49c6-81de-c37a73166cd9','Stackup-apollo-state-f8f92b7a-a991-49c6-81de-c37a73166cd9','Stackup-glamor-f8f92b7a-a991-49c6-81de-c37a73166cd9', 'apollo','{"route":"/stackups/ansible-vs-terraform","userId":null,"featureFlags":{}}'); </script>
<script type="application/json" id="Footer-apollo-state-b887cc69-1029-4251-be72-f428c4a31686">{}</script> <!-- glamorIds: 21 --> <script type="application/json" id="Footer-glamor-b887cc69-1029-4251-be72-f428c4a31686">["1htug8r","1yodi52","iepywa","x5hg3h","u0iaox","9ilv8v","ts0y2j","cs546h","1fco1ts","11a2nsi","1npm75a","1gn11bn","1y302zr","11gxadc","1iqd2ec","lneilx","de1dx1","1h53588","12k57td","j1o656","zr18wh"]</script> <style>@-webkit-keyframes animation_1htug8r{to{transform:rotate(360deg);-webkit-transform:rotate(360deg);}}@-moz-keyframes animation_1htug8r{to{transform:rotate(360deg);-webkit-transform:rotate(360deg);}}@-o-keyframes animation_1htug8r{to{transform:rotate(360deg);-webkit-transform:rotate(360deg);}}@keyframes animation_1htug8r{to{transform:rotate(360deg);-webkit-transform:rotate(360deg);}}@-webkit-keyframes animation_1yodi52{0%{background-position:0 0;}100%{background-position:100em 0;}}@-moz-keyframes animation_1yodi52{0%{background-position:0 0;}100%{background-position:100em 0;}}@-o-keyframes animation_1yodi52{0%{background-position:0 0;}100%{background-position:100em 0;}}@keyframes animation_1yodi52{0%{background-position:0 0;}100%{background-position:100em 0;}}@-webkit-keyframes animation_iepywa{0%, 100%{opacity:0;}50%{opacity:1;}}@-moz-keyframes animation_iepywa{0%, 100%{opacity:0;}50%{opacity:1;}}@-o-keyframes animation_iepywa{0%, 100%{opacity:0;}50%{opacity:1;}}@keyframes animation_iepywa{0%, 100%{opacity:0;}50%{opacity:1;}}@-webkit-keyframes animation_x5hg3h{100%{stroke-dashoffset:0;}}@-moz-keyframes animation_x5hg3h{100%{stroke-dashoffset:0;}}@-o-keyframes animation_x5hg3h{100%{stroke-dashoffset:0;}}@keyframes animation_x5hg3h{100%{stroke-dashoffset:0;}}@-webkit-keyframes animation_u0iaox{0%, 100%{transform:none;-webkit-transform:none;}50%{transform:scale3d(1.1, 1.1, 1);-webkit-transform:scale3d(1.1, 1.1, 1);}}@-moz-keyframes animation_u0iaox{0%, 100%{transform:none;-webkit-transform:none;}50%{transform:scale3d(1.1, 1.1, 1);-webkit-transform:scale3d(1.1, 1.1, 1);}}@-o-keyframes animation_u0iaox{0%, 100%{transform:none;-webkit-transform:none;}50%{transform:scale3d(1.1, 1.1, 1);-webkit-transform:scale3d(1.1, 1.1, 1);}}@keyframes animation_u0iaox{0%, 100%{transform:none;-webkit-transform:none;}50%{transform:scale3d(1.1, 1.1, 1);-webkit-transform:scale3d(1.1, 1.1, 1);}}@-webkit-keyframes animation_9ilv8v{100%{box-shadow:inset 0px 0px 0px 30px #068dfe;}}@-moz-keyframes animation_9ilv8v{100%{box-shadow:inset 0px 0px 0px 30px #068dfe;}}@-o-keyframes animation_9ilv8v{100%{box-shadow:inset 0px 0px 0px 30px #068dfe;}}@keyframes animation_9ilv8v{100%{box-shadow:inset 0px 0px 0px 30px #068dfe;}}.css-ts0y2j,[data-css-ts0y2j]{font-family:Open Sans, Helvetica Neue, Helvetica, Arial, sans;font-weight:400;font-size:13px;line-height:1.4;letter-spacing:normal;-webkit-font-smoothing:antialiased;background:#333;display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;justify-content:center;align-items:center;padding:50px 0 80px;-webkit-box-pack:center;-webkit-justify-content:center;-webkit-box-align:center;-webkit-align-items:center;}@media only screen and (max-width: 768px){.css-ts0y2j,[data-css-ts0y2j]{padding:0 0 40px;}}.css-cs546h,[data-css-cs546h]{max-width:1220px;}@media only screen and (max-width: 992px){.css-cs546h,[data-css-cs546h]{width:700px;}}@media only screen and (min-width: 993px){.css-cs546h,[data-css-cs546h]{width:955px;}}@media only screen and (min-width: 1200px){.css-cs546h,[data-css-cs546h]{width:1220px;}}.css-1fco1ts,[data-css-1fco1ts]{display:grid;grid-template-columns:repeat(4, 1fr);justify-items:center;column-gap:3%;-ms-grid-template-columns:repeat(4, 1fr);-webkit-column-gap:3%;-moz-column-gap:3%;}@media only screen and (max-width: 768px){.css-1fco1ts,[data-css-1fco1ts]{grid-template-columns:1fr;text-align:center;-ms-grid-template-columns:1fr;}}.css-11a2nsi,[data-css-11a2nsi]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;flex-direction:column;align-items:center;text-align:left;width:100%;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-webkit-box-align:center;-webkit-align-items:center;}.css-1npm75a,[data-css-1npm75a]{display:-webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex;flex-direction:column;color:#fff;font-size:14px;line-height:1.7;letter-spacing:0.3px;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;}.css-1npm75a a,[data-css-1npm75a] a{color:#fff;text-decoration:none;}.css-1npm75a a:visited,[data-css-1npm75a] a:visited{color:#fff;}.css-1npm75a a:hover,[data-css-1npm75a] a:hover{color:#068dfe;}.css-1npm75a a:hover span,[data-css-1npm75a] a:hover span{color:#fff;}.css-1npm75a a:active span,[data-css-1npm75a] a:active span{color:#fff;}@media only screen and (max-width: 768px){.css-1npm75a,[data-css-1npm75a]{align-items:center;width:95%;font-size:16px;line-height:2;-webkit-box-align:center;-webkit-align-items:center;}}.css-1gn11bn,[data-css-1gn11bn]{color:#fff;font-weight:600;font-size:20px;letter-spacing:0.38px;}@media only screen and (max-width: 768px){.css-1gn11bn,[data-css-1gn11bn]{margin-top:36px;margin-bottom:24px;}}.css-1y302zr,[data-css-1y302zr]{position:relative;}@media only screen and (min-width: 769px){.css-1y302zr,[data-css-1y302zr]{margin-right:auto;}}.css-11gxadc,[data-css-11gxadc]{padding:0;margin:8px 0;}.css-11gxadc li,[data-css-11gxadc] li{display:inline-block;margin:0 5px;}@media only screen and (min-width: 769px){.css-11gxadc li:first-child,[data-css-11gxadc] li:first-child{margin-left:0;}}@media only screen and (max-width: 768px){.css-11gxadc,[data-css-11gxadc]{margin:0 0 80px;}}.css-1iqd2ec svg:hover path,[data-css-1iqd2ec] svg:hover path{fill:#939393;}.css-lneilx,[data-css-lneilx]{margin-top:15px;line-height:100%;}.css-lneilx svg,[data-css-lneilx] svg{max-width:135px;}.css-lneilx svg g,[data-css-lneilx] svg g{fill:#fff;}@media only screen and (max-width: 768px){.css-lneilx,[data-css-lneilx]{margin-top:0;}}@media only screen and (max-width: 480px){.css-lneilx,[data-css-lneilx]{margin-top:0;}}.css-de1dx1,[data-css-de1dx1]{color:#fff;}.css-de1dx1 a,[data-css-de1dx1] a, .css-de1dx1 span, [data-css-de1dx1] span{display:inline-block;margin-right:8px;font-size:13px;letter-spacing:0.24px;}.css-de1dx1 a:last-child,[data-css-de1dx1] a:last-child{margin-right:0;}@media only screen and (max-width: 768px){.css-de1dx1,[data-css-de1dx1]{line-height:1.5;margin-top:14px;margin-bottom:11px;}}.css-1h53588,[data-css-1h53588]{margin:18px 0;}@media only screen and (max-width: 992px){.css-1h53588,[data-css-1h53588]{text-align:center;}}@media only screen and (max-width: 480px){.css-1h53588,[data-css-1h53588]{text-align:center;}}.css-12k57td,[data-css-12k57td]{font-family:Cerebri Sans Pro;margin-top:0;font-style:normal;font-weight:400;font-size:14px;line-height:25px;letter-spacing:0.375px;color:#fff;}.css-j1o656,[data-css-j1o656]{width:53px;height:53px;}.css-zr18wh,[data-css-zr18wh]{color:#c2c2c2;font-size:10px;margin-top:5px;}.css-zr18wh div,[data-css-zr18wh] div{white-space:nowrap;}@media only screen and (max-width: 768px){.css-zr18wh,[data-css-zr18wh]{font-size:13px;line-height:1.5;text-align:center;}}</style> <div id="Footer-react-component-b887cc69-1029-4251-be72-f428c4a31686" data-ssr="true" ><footer class="css-ts0y2j"><div class="css-cs546h"><div class="css-1fco1ts"><div class="css-11a2nsi"><div class="css-1npm75a"><h3 class="css-1gn11bn">Tools &amp; Services</h3><a href="/stackups/trending" title="Compare Tools">Compare Tools</a><a href="/search" title="Search Tools &amp; Services">Search</a><a href="/alternatives" title="Browse Tools &amp; Services">Browse Tool Alternatives</a><a href="/categories" title="Technology Tools &amp; Services">Browse Tool Categories</a><a href="/submit" title="Submit a Tool">Submit A Tool</a><a href="/admin/approval-tool" title="Approve Tools">Approve Tools</a></div></div><div class="css-11a2nsi"><div class="css-1npm75a"><h3 class="css-1gn11bn">Company</h3><a href="/featured-posts" title="Featured Posts">Blog</a><a href="/api" title="API">API</a><a href="/jobs" title="Jobs">Job Search</a><a href="/careers" title="Careers at StackShare" class="css-1y302zr">Careers</a><a href="/stackshare" title="Our Stack">Our Stack</a><a href="/vendors" title="Advertise With Us">Advertise With Us</a><a href="mailto:team@stackshare.io" title="Contact Us">Contact Us</a></div></div><div class="css-11a2nsi"><div class="css-1npm75a"><h3 class="css-1gn11bn">Follow Us</h3><ul class="css-11gxadc"><li><a href="https://twitter.com/stackshareio" target="_blank" rel="noreferrer noopener nofollow" class="css-1iqd2ec"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path fill="#FFF" fill-rule="evenodd" d="M3.6 0h16.8A3.6 3.6 0 0 1 24 3.6v16.8a3.6 3.6 0 0 1-3.6 3.6H3.6A3.6 3.6 0 0 1 0 20.4V3.6A3.6 3.6 0 0 1 3.6 0zm14.29 9.964c.548-.389 1.005-.891 1.393-1.44a6.285 6.285 0 0 1-1.621.435c.594-.343 1.005-.891 1.21-1.553a5.867 5.867 0 0 1-1.758.685A2.759 2.759 0 0 0 15.08 7.2a2.788 2.788 0 0 0-2.787 2.81c0 .205.023.433.069.639A7.976 7.976 0 0 1 6.56 7.702a3.037 3.037 0 0 0-.365 1.417c0 .982.48 1.827 1.233 2.33-.456 0-.89-.138-1.256-.343v.022c0 1.37.96 2.49 2.238 2.764-.228.069-.48.092-.73.092-.183 0-.366-.023-.526-.046.343 1.119 1.394 1.873 2.604 1.896-.96.753-2.147 1.279-3.472 1.279a6 6 0 0 1-.662-.046c1.233.8 2.718 1.233 4.294 1.233 5.162 0 7.971-4.27 7.971-7.97v-.366z"></path></svg></a></li><li><a href="https://facebook.com/stackshareio" target="_blank" rel="noreferrer noopener nofollow" class="css-1iqd2ec"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path fill="#FFF" fill-rule="evenodd" d="M16.478 24v-8h2.896l.201-3.069h-3.097v-2.237c0-.86.172-1.405 1.262-1.405h1.692l.143-2.925s-.86-.172-2.351-.172c-3.04 0-4.36 1.835-4.36 3.9v2.81H10.8V16h2.065v8H3.6A3.6 3.6 0 0 1 0 20.4V3.6A3.6 3.6 0 0 1 3.6 0h16.8A3.6 3.6 0 0 1 24 3.6v16.8a3.6 3.6 0 0 1-3.6 3.6h-3.922z"></path></svg></a></li><li><a href="https://www.linkedin.com/company/stackshare" target="_blank" rel="noreferrer noopener nofollow" class="css-1iqd2ec"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path fill="#FFF" fill-rule="evenodd" d="M3.6 0h16.8A3.6 3.6 0 0 1 24 3.6v16.8a3.6 3.6 0 0 1-3.6 3.6H3.6A3.6 3.6 0 0 1 0 20.4V3.6A3.6 3.6 0 0 1 3.6 0zm5.521 17.16V9.378H6.374v7.782h2.747zM7.748 8.43c1.119 0 1.83-.807 1.83-1.815C9.554 5.578 8.868 4.8 7.749 4.8c-1.094 0-1.831.778-1.831 1.815 0 1.008.712 1.815 1.805 1.815h.026zm11.444 8.73v-4.12c0-2.518-1.246-4.12-3.205-4.12-1.119 0-1.932.661-2.288 1.653l-.102-1.195h-2.721c.025.305.076 1.83.076 1.83v5.952h2.747v-4.12c0-1.12.508-1.831 1.347-1.831.84 0 1.4.432 1.4 1.83v4.12h2.746z"></path></svg></a></li><li><a href="https://angel.co/stackshare" target="_blank" rel="noreferrer noopener nofollow" class="css-1iqd2ec"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path fill="#FFF" fill-rule="evenodd" d="M3.6 0h16.8A3.6 3.6 0 0 1 24 3.6v16.8a3.6 3.6 0 0 1-3.6 3.6H3.6A3.6 3.6 0 0 1 0 20.4V3.6A3.6 3.6 0 0 1 3.6 0zm4.684 14.42c.365.493.708.877 1.029 1.153.322.276.579.413.769.413.14 0 .268-.064.385-.194a.624.624 0 0 0 .173-.42c0-.16-.114-.528-.341-1.11-.227-.58-.512-1.15-.849-1.71-.249-.418-.492-.733-.732-.947-.24-.214-.466-.319-.68-.319-.174 0-.366.111-.577.33-.212.223-.317.43-.317.622 0 .2.102.501.309.903.207.4.484.827.83 1.28zm6.062-4.06a89.757 89.757 0 0 0 1.296-3.767c.31-.99.465-1.598.465-1.824 0-.242-.053-.43-.155-.563h-.001a.51.51 0 0 0-.429-.2c-.23 0-.468.194-.707.582-.24.389-.505 1.014-.793 1.875l-1.238 3.622 1.562.275zm-4.45-.445a.982.982 0 0 1 .371-.058c.05 0 .149.005.298.013.147.01.392.03.73.063L9.958 6.022c-.347-.993-.615-1.644-.806-1.949-.19-.303-.397-.456-.619-.456a.513.513 0 0 0-.422.2c-.107.133-.16.313-.16.54 0 .384.144 1.052.433 2.004.29.953.724 2.202 1.303 3.749a.41.41 0 0 1 .21-.195zm6.22 2.129a1.006 1.006 0 0 0-.245-.293c-.338-.285-.998-.54-1.979-.765a13.608 13.608 0 0 0-3.068-.338c-.296 0-.508.05-.632.15-.124.1-.186.272-.186.516 0 .567.314.98.943 1.233.627.255 1.643.382 3.049.382h.508c.116 0 .21.044.279.133.07.088.118.219.142.394-.14.134-.43.287-.866.456-.438.172-.774.341-1.005.508a4.53 4.53 0 0 0-1.196 1.31 3.99 3.99 0 0 0-.198.374c-.04.09-.07.176-.102.263-.012.034-.029.067-.04.1-.018.063-.03.125-.044.188-.013.056-.032.11-.04.166-.006.039-.006.076-.01.114-.008.076-.019.154-.019.228v.001c0 .277.063.609.192.997.128.388.192.629.192.72v.086l-.025.112c-.364-.023-.65-.239-.863-.644-.21-.406-.315-.947-.315-1.622v-.112a.719.719 0 0 1-.192.125.553.553 0 0 1-.205.037c-.074 0-.144-.006-.212-.019a2.132 2.132 0 0 1-.222-.058v.001c.024.094.043.182.056.27a1.05 1.05 0 0 1-.34 1.003 1.22 1.22 0 0 1-.856.331c-.52 0-1.05-.256-1.587-.77-.537-.515-.806-1.017-.806-1.51 0-.091.01-.172.032-.243a.406.406 0 0 1 .104-.182c.115.142.278.35.483.627.545.76 1.05 1.14 1.512 1.14.157 0 .297-.05.422-.149.123-.1.185-.206.185-.313v-.001c0-.127-.083-.334-.248-.629a8.366 8.366 0 0 0-.681-.99c-.33-.425-.606-.736-.826-.933-.217-.196-.394-.295-.525-.295-.29 0-.557.157-.8.47a1.756 1.756 0 0 0-.366 1.11c0 .344.086.725.254 1.147.168.422.416.846.738 1.271a4.937 4.937 0 0 0 1.816 1.524c.723.355 1.522.532 2.4.532 1.611 0 2.96-.607 4.046-1.823 1.088-1.216 1.632-2.739 1.632-4.568 0-.56-.04-1.005-.124-1.337a1.67 1.67 0 0 0-.162-.425zm-4.733 2.915a6.14 6.14 0 0 1 .626-.682c.218-.206.449-.386.689-.545a8.167 8.167 0 0 1-1.01-.113 5.067 5.067 0 0 1-.912-.252c.133.268.25.535.354.802.103.268.188.532.253.79z"></path></svg></a></li></ul></div></div><div class="css-11a2nsi"><div class="css-1npm75a"><a href="/" class="css-lneilx"><svg width="203" height="31" viewBox="0 0 812 124" xmlns="http://www.w3.org/2000/svg" fill-rule="evenodd" clip-rule="evenodd" stroke-linejoin="round" stroke-miterlimit="1.414"><g id="Layer1" fill-rule="nonzero"><path d="M221.086 85.794c0 7.342-2.55 12.933-7.651 16.775-5.101 3.842-12.731 5.762-22.889 5.762-5.208 0-9.647-.352-13.318-1.056-3.671-.704-7.107-1.739-10.308-3.105V88.035c3.628 1.707 7.715 3.137 12.261 4.29 4.546 1.152 8.547 1.728 12.005 1.728 7.085 0 10.628-2.048 10.628-6.146 0-1.537-.469-2.785-1.408-3.746-.939-.96-2.561-2.048-4.866-3.265-2.305-1.216-5.379-2.636-9.22-4.258-5.506-2.305-9.551-4.439-12.133-6.402-2.583-1.964-4.461-4.215-5.635-6.755-1.173-2.54-1.76-5.666-1.76-9.38 0-6.36 2.465-11.279 7.395-14.758 4.93-3.479 11.919-5.218 20.968-5.218 8.623 0 17.01 1.878 25.163 5.634l-5.891 14.086c-3.585-1.537-6.936-2.796-10.052-3.778a31.589 31.589 0 0 0-9.54-1.472c-5.762 0-8.643 1.558-8.643 4.674 0 1.75.928 3.265 2.785 4.546 1.857 1.28 5.922 3.18 12.197 5.698 5.591 2.262 9.689 4.375 12.293 6.339 2.604 1.963 4.524 4.225 5.762 6.786 1.238 2.561 1.857 5.613 1.857 9.156zM259.924 92.773c3.415 0 7.513-.747 12.293-2.241v14.534c-4.866 2.177-10.841 3.265-17.927 3.265-7.811 0-13.499-1.974-17.063-5.922-3.564-3.948-5.346-9.871-5.346-17.767V50.131h-9.348v-8.259l10.756-6.531 5.635-15.11h12.485v15.238h20.04v14.662h-20.04v34.511c0 2.774.779 4.823 2.337 6.146 1.558 1.323 3.617 1.985 6.178 1.985zM325.59 107.051l-3.778-9.732h-.512c-3.287 4.14-6.669 7.011-10.148 8.611-3.479 1.601-8.014 2.401-13.606 2.401-6.872 0-12.282-1.963-16.23-5.89-3.949-3.927-5.923-9.519-5.923-16.775 0-7.598 2.657-13.2 7.971-16.807 5.315-3.607 13.329-5.602 24.042-5.986l12.421-.384v-3.138c0-7.256-3.713-10.884-11.14-10.884-5.72 0-12.443 1.728-20.168 5.186l-6.467-13.19c8.238-4.311 17.372-6.466 27.403-6.466 9.604 0 16.967 2.091 22.089 6.274s7.683 10.543 7.683 19.08v47.7H325.59zm-5.763-33.166l-7.555.256c-5.677.171-9.902 1.195-12.677 3.074-2.774 1.878-4.162 4.738-4.162 8.579 0 5.506 3.159 8.259 9.476 8.259 4.525 0 8.142-1.301 10.853-3.905 2.71-2.604 4.065-6.061 4.065-10.372v-5.891zM381.843 108.331c-22.281 0-33.421-12.229-33.421-36.687 0-12.165 3.03-21.459 9.091-27.883 6.061-6.424 14.748-9.636 26.059-9.636 8.281 0 15.708 1.622 22.281 4.866l-5.762 15.11c-3.074-1.238-5.933-2.251-8.58-3.041-2.646-.79-5.293-1.185-7.939-1.185-10.159 0-15.238 7.214-15.238 21.641 0 14.001 5.079 21.001 15.238 21.001 3.756 0 7.235-.502 10.436-1.505 3.202-1.003 6.403-2.571 9.604-4.706v16.711c-3.158 2.006-6.349 3.394-9.572 4.162-3.222.768-7.288 1.152-12.197 1.152zM432.398 68.123l8.516-10.885 20.04-21.769h22.025l-28.428 31.053 30.157 40.529h-22.537l-20.617-29.004-8.387 6.723v22.281h-19.528V7.426h19.528V51.86l-1.025 16.263h.256z"></path><path d="M538.336 85.794c0 7.342-2.55 12.933-7.651 16.775-5.101 3.842-12.73 5.762-22.889 5.762-5.208 0-9.647-.352-13.318-1.056-3.671-.704-7.107-1.739-10.308-3.105V88.035c3.628 1.707 7.715 3.137 12.261 4.29 4.546 1.152 8.548 1.728 12.005 1.728 7.086 0 10.628-2.048 10.628-6.146 0-1.537-.469-2.785-1.408-3.746-.939-.96-2.561-2.048-4.866-3.265-2.305-1.216-5.378-2.636-9.22-4.258-5.506-2.305-9.551-4.439-12.133-6.402-2.582-1.964-4.46-4.215-5.634-6.755-1.174-2.54-1.761-5.666-1.761-9.38 0-6.36 2.465-11.279 7.395-14.758 4.93-3.479 11.92-5.218 20.969-5.218 8.622 0 17.009 1.878 25.162 5.634l-5.89 14.086c-3.586-1.537-6.937-2.796-10.053-3.778a31.589 31.589 0 0 0-9.54-1.472c-5.762 0-8.643 1.558-8.643 4.674 0 1.75.928 3.265 2.785 4.546 1.857 1.28 5.923 3.18 12.197 5.698 5.592 2.262 9.689 4.375 12.293 6.339 2.604 1.963 4.525 4.225 5.763 6.786 1.237 2.561 1.856 5.613 1.856 9.156zM613.093 107.051h-19.528V65.242c0-10.33-3.841-15.495-11.524-15.495-5.464 0-9.412 1.857-11.845 5.571-2.433 3.713-3.65 9.732-3.65 18.055v33.678h-19.528V7.426h19.528v20.296c0 1.58-.149 5.293-.448 11.141l-.448 5.762h1.024c4.354-7 11.269-10.5 20.745-10.5 8.409 0 14.79 2.262 19.144 6.787 4.353 4.524 6.53 11.012 6.53 19.464v46.675zM672.1 107.051l-3.778-9.732h-.512c-3.286 4.14-6.669 7.011-10.148 8.611-3.479 1.601-8.014 2.401-13.606 2.401-6.872 0-12.282-1.963-16.23-5.89-3.948-3.927-5.923-9.519-5.923-16.775 0-7.598 2.657-13.2 7.972-16.807 5.314-3.607 13.328-5.602 24.042-5.986l12.421-.384v-3.138c0-7.256-3.714-10.884-11.141-10.884-5.72 0-12.442 1.728-20.168 5.186l-6.467-13.19c8.238-4.311 17.373-6.466 27.403-6.466 9.604 0 16.967 2.091 22.089 6.274 5.123 4.183 7.684 10.543 7.684 19.08v47.7H672.1zm-5.762-33.166l-7.555.256c-5.677.171-9.903 1.195-12.678 3.074-2.774 1.878-4.161 4.738-4.161 8.579 0 5.506 3.158 8.259 9.475 8.259 4.525 0 8.142-1.301 10.853-3.905 2.71-2.604 4.066-6.061 4.066-10.372v-5.891zM739.238 34.125c2.646 0 4.845.192 6.595.576l-1.473 18.312c-1.579-.427-3.5-.641-5.762-.641-6.232 0-11.088 1.601-14.566 4.802-3.479 3.202-5.218 7.684-5.218 13.446v36.431h-19.528V35.469h14.79l2.881 12.037h.96c2.22-4.012 5.218-7.245 8.996-9.7 3.777-2.454 7.886-3.681 12.325-3.681zM779.293 48.019c-4.141 0-7.385 1.312-9.732 3.937-2.348 2.625-3.692 6.349-4.034 11.173h27.403c-.085-4.824-1.344-8.548-3.777-11.173s-5.72-3.937-9.86-3.937zm2.753 60.312c-11.525 0-20.531-3.18-27.019-9.54-6.488-6.36-9.732-15.366-9.732-27.019 0-11.994 2.998-21.267 8.996-27.819 5.997-6.552 14.288-9.828 24.874-9.828 10.116 0 17.991 2.881 23.625 8.643 5.635 5.763 8.452 13.723 8.452 23.882v9.476h-46.163c.213 5.549 1.857 9.882 4.93 12.997 3.073 3.116 7.384 4.674 12.933 4.674 4.311 0 8.388-.448 12.229-1.344 3.842-.897 7.854-2.326 12.037-4.29v15.11c-3.414 1.708-7.064 2.978-10.948 3.81-3.885.832-8.622 1.248-14.214 1.248z"></path></g><g fill="#008ff9"><path d="M101.98 83c-3.9 0-7.157 2.792-7.886 6.482-.212 1.564 0 3.123 0 3.123.73 3.687 3.986 6.477 7.885 6.477 4.434 0 8.042-3.605 8.042-8.04 0-4.434-3.608-8.042-8.042-8.042M32.041 54C27.607 54 24 57.606 24 62.041c0 4.433 3.607 8.041 8.041 8.041 4.435 0 8.042-3.608 8.042-8.041 0-4.435-3.607-8.041-8.042-8.041m69.924-12.918c4.435 0 8.042-3.608 8.042-8.041 0-4.435-3.607-8.041-8.042-8.041-3.898 0-7.155 2.791-7.885 6.48v.049s-.18 1.654 0 3.073c.73 3.689 3.987 6.48 7.885 6.48"></path><path d="M101.965 105.961c-6.965 0-12.841-4.655-14.692-11.022H73.376l-.076.043-16.575-28.517H46.592c-1.852 6.367-7.727 11.023-14.694 11.023-8.451 0-15.303-6.852-15.303-15.303 0-8.452 6.852-15.305 15.303-15.305 6.967 0 12.842 4.656 14.694 11.025h9.905l.128-.217L73.3 28.999l.141.083h13.768c1.852-6.369 7.727-11.025 14.692-11.025 8.453 0 15.305 6.853 15.305 15.305 0 8.451-6.852 15.304-15.305 15.304-6.965 0-12.84-4.656-14.692-11.025h-9.03l-14.14 24.326-.006.023.005.022L78.2 86.378h9.073c1.851-6.369 7.727-11.026 14.692-11.026 8.453 0 15.305 6.853 15.305 15.305s-6.852 15.304-15.305 15.304zM124.996 0H8.004C3.584 0 0 3.561 0 7.953v108.094C0 120.44 3.584 124 8.004 124h116.992c4.421 0 8.004-3.56 8.004-7.953V7.953C133 3.561 129.417 0 124.996 0z"></path></g></svg></a><div class="css-de1dx1"><a href="/terms">Terms</a><span>路</span><a href="/privacy">Privacy</a></div><div class="css-1h53588"><h3 class="css-12k57td">SOC 2 Type 2 Certified</h3><a href="http://www.aicpa.org/soc4so" rel="nofollow noreferrer noopener" target="_blank" title="SOC2 badge"><img src="https://img.stackshare.io/fe/SOC2.png" class="css-j1o656"/></a></div><div class="css-zr18wh"><div>Copyright 漏 <!-- -->2022<!-- --> StackShare, Inc. </div><div>All rights reserved.</div></div><div class="css-de1dx1"><a href="/html-sitemaps/stackups/main.html">Sitemap</a></div></div></div></div></div></footer></div> <script> renderComponent('Footer','Footer-react-component-b887cc69-1029-4251-be72-f428c4a31686','Footer-apollo-state-b887cc69-1029-4251-be72-f428c4a31686','Footer-glamor-b887cc69-1029-4251-be72-f428c4a31686', 'apollo','{"isAdmin":null}'); </script>