Live data from Hacker News

AWS Copilot

aws.amazon.com

81–90 of 97 posts

Re: AWS Copilot

#81

Not directly related to copilot but in context of ever increasing yml/json configurations for cloud apps, am I the only one who feels overwhelmed with the configuration options? I see tons of articles with just drop this json here and that yml there and run this cli command - where is the reference for these json/ymls? Does everyone fully know/understands the structure/options? How do people keep track of the changes…

Oof yes. The times I read stuff like "to make sure your WidgyPidy will automatically balance your BoolyPooly cluster, just set the autoEnableBalanceBoolyClusterGenerated in your WiPoBaClConfig.yml file to the desired floating point and drop a reference in the ServerClusteringPoolDirective.json in your configured ShimpyDimpy config folder" like it's obvious and simple...

Finally, DevOps has caught up to the rate of progress in js framework land. Rejoice!

Re: AWS Copilot

#82

Hi!! I’m a developer on AWS Copilot! We’d love your feedback! Homebrew: brew install aws/tap/copilot-cli Docs: https://aws.github.io/copilot-cli/ Feedback & Requests: https://github.com/aws/copilot-cli/issues/new

The tool looks promising (and of course it is just a couple weeks after I finished rebuilding our ECS CloudFormation from the ground up... lost count of how many times AWS has done that).

My question is a bit less targeted at this specifically and more about how AWS approaches all of these various tools.

We have probably 95% of our infrastructure in CloudFormation one way or another (either directly or with something like SAM).

As more of these tools come out there is going to be crossover (and there already is with Amplify and SAM for example).

There will also be questions about how we pass exports around so we don't have to hard code endpoints that were created by another tool. (Say a Lambda created by SAM needs to be called by a service in ECS).

So my question is a couple things:

1. Does AWS have a requirement or a goal in mind of how to always ensure we can pass these exports around ideally in a consistent way (this and any future tools that may come out)? I worry about having too many different ways that things work from a code standpoint that we just introduce more bugs into our system.

2. Is the thought that a given repo should ideally be using a single tool (I ask since I see you mention S3 buckets, and databases as a coming soon) and not mixing things? Like not using this plus some native CloudFormation for example?

3. Finally, I would love to see a... "deployment tools" page or something from AWS. A page that is a table of every deployment tool for columns and every service for rows and can easily see at a glance what tool can do which services. Right now I am considering if I need to build a page like this for internal use so a developer can easily look and see what fits their use case the best. But a page managed by AWS would be great.

Ultimately what I struggle a bit with tools like this, are what does it get me long term over just using straight CloudFormation where my only limitation is CloudFormation lagging behind.

Re: AWS Copilot

#83

Not directly related to copilot but in context of ever increasing yml/json configurations for cloud apps, am I the only one who feels overwhelmed with the configuration options? I see tons of articles with just drop this json here and that yml there and run this cli command - where is the reference for these json/ymls? Does everyone fully know/understands the structure/options? How do people keep track of the changes…

No, I'm not overwhelmed by documented/structured config files.

20 years ago I was a Windows admin, discovered Linux, and it blew my mind how much easier it was to configure, experiment, validate, and roll-back config changes. GUIs are nice for discovery and exploration, but there's a very good reason they're not used for server and infrastructure configuration.

Re: AWS Copilot

#84

Not directly related to copilot but in context of ever increasing yml/json configurations for cloud apps, am I the only one who feels overwhelmed with the configuration options? I see tons of articles with just drop this json here and that yml there and run this cli command - where is the reference for these json/ymls? Does everyone fully know/understands the structure/options? How do people keep track of the changes…

> yml/json configurations for [...]

We learned this lesson the hard way with XML back in the early naughts when behind everything was a nauseating morass of xml with overcomplicated designed-by-committee schemas.

People moved out of development and tried hard to forget it, but neglected to instruct the next generation about the pitfalls of shitty configuration files that get out of control.

Now we got json and yaml. No more 's, yay, but somehow worse, less maintainable and less understandable.

Re: AWS Copilot

#86
post #78

Earlier quoted context omitted.

Maybe it's messaging intended to be for grizzled old veterans going "look how we've taken the old complicated thing and given you powerful tools to allow you to manage it more easily with less steps" but then gets interpreted by neophytes as "look how easy it is for a complete beginner to come in and set up a complicated system".

Great observation. A lot of messaging for cloud products is comparing against legacy or dominant solutions. A beginner doesn’t have that reference point.

Messaging is written by marketing and sales departments.

Employees there usually don't have depth of technical expertise or experience to draw from, and are incentivized to make the product sound as easy to use as possible.

This combination results in {really complicated thing} -> {simple abstraction}. Ultimately, everyone internalizes this and starts forgetting that {simple abstraction} is actually {really complicated thing}.

Happens with any popular technology. Networking, DB, cloud, ML.

Unfortunately, this flies because the primary buyers are also non-technical.

Re: AWS Copilot

#87
post #77
post #65

Earlier quoted context omitted.

Copilot generates CloudFormation templates based on the Copilot-specific config files. There’s a place where you can add your own additional resources in CloudFormation syntax IIRC. It also has the ability to create a CodePipeline for app deployment. That creation is also done by generating a CloudFormation template and deploying it for the user. I’m not sure why it’s not clearly documented that this is happening, bu…

I have a hard time believing anyone would consider ejecting to CloudFormation a selling point.

It's a cautious way to start working with a new tool. It's AWS, but there will still be bugs, especially for people with large or unusual deployments. You could use the tool to generate CloudFormation configs and then put them through a PR process. After six months of this with no bogus configs generated by the tool, you might decide you're on a well-paved road and make it part of your CI/CD pipeline.

Re: AWS Copilot

#88
post #82

Hi!! I’m a developer on AWS Copilot! We’d love your feedback! Homebrew: brew install aws/tap/copilot-cli Docs: https://aws.github.io/copilot-cli/ Feedback & Requests: https://github.com/aws/copilot-cli/issues/new

The tool looks promising (and of course it is just a couple weeks after I finished rebuilding our ECS CloudFormation from the ground up... lost count of how many times AWS has done that). My question is a bit less targeted at this specifically and more about how AWS approaches all of these various tools. We have probably 95% of our infrastructure in CloudFormation one way or another (either directly or with something…

Not from AWS, but what it sounds like you're asking for is better cohesion and more consistency between AWS products and services?

I've been an AWS customer for over 10 years, and have been asking them for this (on behalf of my enterprise customers). I'm always told "they're working on getting better" but they never really do.

Cloud formation features are inconsistent across products. Documentation is formatted and structured differently depending on the tool. The AWS web console is an ever changing grab-bag of new and old. Some products integrate well, other products feel like you're using an abandoned hack-week prototype.

Part of the reason that AWS is so great is how much it can do, and I think that's been made possible by the apparent level of autonomy the teams have. However, it's at the expense of the customer's experience.

Re: AWS Copilot

#89
post #75

Earlier quoted context omitted.

Urgh, yes. I'm not a dev by any stretch of the imagination but deploying PHP apps on servers was significantly easier than this mess we have now.

Rsync/ln is still the fastest deployment process I’ve had so far.

Still too complex for me, let me just login to an sFTP and drop some files in

Re: AWS Copilot

#90
post #88
post #82

Earlier quoted context omitted.

The tool looks promising (and of course it is just a couple weeks after I finished rebuilding our ECS CloudFormation from the ground up... lost count of how many times AWS has done that). My question is a bit less targeted at this specifically and more about how AWS approaches all of these various tools. We have probably 95% of our infrastructure in CloudFormation one way or another (either directly or with something…

Not from AWS, but what it sounds like you're asking for is better cohesion and more consistency between AWS products and services? I've been an AWS customer for over 10 years, and have been asking them for this (on behalf of my enterprise customers). I'm always told "they're working on getting better" but they never really do. Cloud formation features are inconsistent across products. Documentation is formatted and s…

I totally get that, and its for sure the reason I both love and hate AWS. They release things at a near breakneck speed.

I guess its more, if I had to choose one area of AWS that I wish there was a but more consistency it would be their deployment tools. It really just comes down to, when I start something it's almost an agonizing choice of what do I use since I am worried that I could get stuck in a box.

I don't know what the answer is, that is just my view of all of these tools.

Post reply on HN