libaws
terraform-cdk
Our great sponsors
libaws | terraform-cdk | |
---|---|---|
57 | 104 | |
440 | 4,720 | |
- | 1.1% | |
8.0 | 9.9 | |
10 days ago | 2 days ago | |
Go | TypeScript | |
MIT License | Mozilla Public License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
libaws
-
Go's Error Handling Is Perfect
i print the error along with file and line number every time i return it. clunky, but it works.
in fact i print file and line with every log message.
https://github.com/nathants/libaws/blob/87fb45b4cae20abd1bb1...
-
The worst thing about Jenkins is that it works
cloud is so good now it’s hard to justify not doing something bespoke. ec2 spot is insanely cheaper than turnkey cicd, and better in almost every way.
i’m delighted to pay 30% over infra cost for convenience, but not 500%. and it better actually be convenient, not just have a good landing page and sales team.
this month i learned localzones have even better spot prices. losangeles-1 is half the spot price of us-west-2.
for a runner, do something like this, but react to an http call instead of a s3 put[1].
for a web ui do something like this[2].
s3, lambda, and ec2 spot are a perfect fit for cicd and a lot more.
1. https://github.com/nathants/libaws/tree/91b1c27fc947e067ed46...
2. https://github.com/nathants/aws-exec/tree/e68769126b5aae0e35...
-
Cloud, Why So Difficult?
like linux, cloud is a lot to learn, but worth it.
like linux, cloud is best kept simple, or it can become brittle and confusing.
like linux, cloud has a lot of cool things like zfs, that should be appreciated but rarely used.
like linux, using go makes your life a lot easier. the aws go sdk is the documentation.
like linux, you have to learn a lot and then find the core utility you actually care about. for me it is:
https://github.com/nathants/libaws
-
Kubernetes Is Hard
the good new is, for the 95% of projects that can tolerate it, aws the good parts are actually both simple and easy[1].
it’s hard to find things you can’t build on s3, dynamo, lambda, and ec2.
if either compliance or a 5% project demand it, complicated solutions should be explored.
1. https://github.com/nathants/libaws
-
Rapid growth, lessons learned and improvements at Fly.io
i also wanted a good cli for aws, and built one:
https://github.com/nathants/libaws
companies like fly are fantastic.
they provide a good service, and they put market pressure on aws.
-
From Go on EC2 to Fly.io: +fun, −$9/mo
cool transition and fun writeup!
for low, intermittent traffic sites, go on lambda might be a better comparison:
https://github.com/nathants/libaws/tree/master/examples/simp...
-
Ask HN: What is the most barebone back end solution?
lambda + s3. add ec2 spot if you need it.
just make sure you understand how billing works. mostly it’s just egress bandwidth is expensive.
do something like this:
https://github.com/nathants/aws-gocljs
or with less opinions:
https://github.com/nathants/libaws/tree/master/examples/simp...
welcome to cloud, glhf!
-
Ask HN: Cool side project you have written using Golang
aws ux for retaining both hair and sanity.
https://github.com/nathants/libaws
-
Ask HN: How to get more experience with system design questions (esp scaling)?
build and scale systems with artificial load on aws! scaling the load testing will be just as interesting as scaling the system under test.
start with low bottlenecks, ie a cluster of c6i.large ec2 spot. how fast can you do this? have fast can you scale that? ec2 and s3 is all you need to build anything.
use ec2 spot, avoid network egress, avoid cross region/zone traffic, create and destroy ec2 instances as needed instead of letting them sit idle. you could grow system scaling intution for the price of your streaming subscriptions.
start with something like this:
https://github.com/nathants/libaws/tree/master/examples/comp...
maybe mess around with public datasets on aws, just make sure to be in the correct region to avoid data egress.
welcome systems friend. one accurate measurement is worth a thousand expert opinions. scaling is fun!
-
Static site hosting hurdles
aws has too many knobs, presumably to satisfy the union of the needs of all the enterprise customers. that said, lambda+s3+dynamodb+ec2 are pretty good once you tape over all the knobs that aren't needed. i work with them like this[1].
these days i build on aws and r2. aws for the nuts and bolts, r2 for high bandwidth egress. it's a perfect match.
1. https://github.com/nathants/libaws
terraform-cdk
-
Learning Go by examples: part 12 - Deploy Go apps in Go with CDK for Terraform (CDKTF)
At first I tested it to deploy an OVHcloud Managed Kubernetes Service (MKS) with a Node Pool. And step by step, it worked. I even created a Pull Request (PR) in the terraform-cdk repository to add it as an example ☺️.
-
AWS CDK For Noobs: Deploying NextJS Apps
I'll be trying more sample app deployments with CDK and maybe even explore CDK for Terraform.
-
Show HN: Winglang – a new Cloud-Oriented programming language
You can use CDK with other providers using https://github.com/hashicorp/terraform-cdk
In my experience, CDK is far better than Pulumi, especially if you're mostly going to be using AWS.
- Terraform CDK
-
Why is Kubernetes adoption so hard?
I, personally, prefer Crossplane Composite Functions on top of CDK8S, but had dropped CDKTF due to bloat. You can actually manage Kubernetes updates/upgrade lifecycle with Crossplane, as well.
- Cloud, Why So Difficult?
- What are some harsh truths that r/devops needs to hear?
-
Backend engineers that don't like JavaScript
I was going to recommend Pulumi, but looks like CDK for Terraform is still being kept up to date.
-
Should i migrate from Kustomize to Helm?
Avoid Pulumi, get directly to source and use https://github.com/hashicorp/terraform-cdk
- AWS IAM Roles, a tale of unnecessary complexity
What are some alternatives?
kawipiko - kawipiko -- blazingly fast static HTTP server -- focused on low latency and high concurrency, by leveraging Go, `fasthttp` and the CDB embedded database
Pulumi - Pulumi - Infrastructure as Code in any programming language. Build infrastructure intuitively on any cloud using familiar languages 🚀
aws-nuke - Nuke a whole AWS account and delete all its resources.
terragrunt - Terragrunt is a thin wrapper for Terraform that provides extra tools for working with multiple Terraform modules.
awesome-paas - A curated list of PaaS, developer platforms, Self hosted PaaS, Cloud IDEs and ADNs.
crossplane - The Cloud Native Control Plane
pytago - A source-to-source transpiler for Python to Go translation
copilot-cli - The AWS Copilot CLI is a tool for developers to build, release and operate production ready containerized applications on AWS App Runner or Amazon ECS on AWS Fargate.
serverless-express - Run Express and other Node.js frameworks on AWS Serverless technologies such as Lambda, API Gateway, Lambda@Edge, and more.
cdk8s - Define Kubernetes native apps and abstractions using object-oriented programming
dockerfile-rails - Provides a Rails generator to produce Dockerfiles and related files.
aws-cdk-local - Thin wrapper script for using the AWS CDK CLI with LocalStack