Giter Site home page Giter Site logo

Comments (4)

pmontrasio avatar pmontrasio commented on September 23, 2024

Furthermore I suggest to leave the bucket name out of the configuration. It's not important and it could be randomly generated. If given a prefix such as gordon-<stage>- then it would be easy to spot it in the S3 console. It could be stored into a dot file in the project folder for easier retrieval, maybe private.conf

from gordon.

jorgebastida avatar jorgebastida commented on September 23, 2024

I think there are two things we can do to make the experience better / not broken.

The most obvious one is to make gordon not proceed applying templates if the previous didn't finish successfully.

The second thing which would make gordon better would be to add a validation process before applying templates. In this case validate that the name of the bucket is correct... but there are many more situations where gordon could stop people from making configuration mistakes.

About adding a "state" configuration file... that is something which crossed my mind in the past, but the problem is that you would need to have one per stage and region... which might end looking like a mess. Will give it a second think.

from gordon.

pmontrasio avatar pmontrasio commented on September 23, 2024

First of all, maybe we should split this issue in two, one about the error message and one about the configuration. Sorry for not doing it myself right away.

About the former: if AWS returns an error (does it?) gordon should just print it out and quit.

About the latter: I'm not particularly familiar with AWS and I believe that if gordon and the other similar tools will get popular it will be because many other AWS newbies are using them. So, we don't know much about the reasons why some AWS services are tied together and we don't care much. I'm perfectly OK with gordon doing its magic and hiding everything to me (but be careful about decisions that could cost money to people). Creating the bucket and immediately destroying it would be fine, or uploading the code as a ZIP file. Having to handle too many details would slow me down and create bugs. An example with gordon: I still don't know why I couldn't get the API gateway to pass my parameters to my event object but I'm probably misconfiguring something. gordon should take over and autoconfigure the mapping from the API gateway and Lambda because there is no much sense in declaring parameters in the settings.yml file and not wanting them in Lambda.

An example from the past: many people started using Rails 10 years ago without knowing anything about Ruby. Ruby was just the scripting language of Rails, used to fill in the blank of the generated scaffolds. It got pretty successful anyway and most of the Ruby developers nowadays develop with Rails. Replace Ruby with AWS and Rails with gordon and you see what I mean. Then you need only to fill in some JS code in the template generated for the code.js file (or Python).

from gordon.

jorgebastida avatar jorgebastida commented on September 23, 2024

Just fixed the first bit of this issue. It is ready on master, and will be released as part of 0.2.1 a8e9f27

The tl;dr version is that if applying a template fails, gordon will tell you so and exit.

About the second issue, I've added validation for the stage name and the code-bucket setting but... yes, next versions should aim to remove complexity (like the parameters comment you mentioned in the other PR) as well as trying to warn users when some configurations are obviously wrong.

These changes are on master and will get released as part of 0.2.1. Thanks!

from gordon.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.