Comments (8)
That would be great, that's on the list of planned features.
How would you implement that?
I would like to have SSL support for custom domains, but need to check how to do that.
For the command, original idea was scotty --domain example.com
and scotty -d example.com
, but feel free to recommend anything you thing would work better.
Also, share your lib if it's open source :)
from scottyjs.
Tool I worked on is at https://github.com/foundcenter/spajs. The idea is the same, to do quick setup and deployment of static websites/spa to aws.
Tool has two commands:
init
setup bucket, cf distribution, ssl... with CNAME support. Also has support for different environments, all configs are saved under .spajs/ in current dir - so you can easily target: staging, testing, production - whatever env.deploy
take files from certain dir and sync with s3 bucket. This is implemented using couple of gulp tasks (I had to come up with something fast :) ) I've added also resource minification and versioning and deploy (maybe out of scope for this tool) using sync (awspublish module) - not just copy. The interesting part is caching since that is going to be crucial for performance.
Take a look tell me what you think :)
Now back to the issue, the flow would go like this:
- If
--domain
is specified we would first check if there is a valid certificate on ACM, if there isn't that we would prompt the user if he want's to request one. The info what to do next would be displayed to the user like:Verification email has been sent to [email protected]. Please verify certificate request and re-run scotty.
To get already verified SSL certificate from ACM take a look at: https://github.com/foundcenter/spajs/blob/f6ed94127cd75307c9c367ef4e0f99fde3f29120/src/initializer.ts#L187 The catch is that in order for certificate to be valid for CF distribution it needs to be requested inus-east-1
. - Once certificate is setup scotty would needs to create bucket with name corresponding to domain and setup CNAME and custom certificate on CF. To set CF certificate take a look at: https://github.com/foundcenter/spajs/blob/f6ed94127cd75307c9c367ef4e0f99fde3f29120/src/initializer.ts#L174
Would this work?
from scottyjs.
I started for the dns pointing part with the following: ckaatz-here@9a3c89e but it is in progress
from scottyjs.
Spajs looks nice :)
I'll try it a bit later today.
I think resource compression is out of scope for tool like this, it should be handled by some other tool before deployment, ie. webpack or gulp.
Flow looks good. In v2 we can optimize everything a bit more, but this sounds great for v1.
I need to write the plan for v2 somewhere, but we'll wait a bit more just to see if people are using Scotty before we do some of the improvements.
I'll close this issue and wait for PR :)
Thanks!
from scottyjs.
@ckaatz-here just saw your comment, looks like a good start. I have some small comments, but I'll wait for PR because they are not affecting the concept.
@amirilovic do you want to help @ckaatz-here, or? Not sure what's the best way to proceed, I didn't expect so many PRs for scotty
haha :)
from scottyjs.
@ckaatz-here I see that you are focusing on r53, did you plan to add ssl support, do you need any help regarding this?
from scottyjs.
@amirilovic I did not intend to add ssl support but would love to get help with that part.
from scottyjs.
@ckaatz-here Great, I'll work on that.
from scottyjs.
Related Issues (17)
- Issue while installing scottyjs HOT 8
- GZip files HOT 7
- Version 2 roadmap + questions and ideas HOT 12
- deploy doesn't work in docker context HOT 7
- Improper url provided for eu-west-2 region HOT 2
- PR #19 broke standard AWS credential provider chaining HOT 1
- Clear bucket before upload files HOT 1
- CDN URL undefined with --nocdn option HOT 1
- us-east-1 should be the default HOT 2
- How to set the cache-control header? HOT 1
- Feature: define credentials with env variables HOT 6
- `--profile xyz` flag not working with `aws configure --profile xyz` HOT 1
- Invalidating Cloudfront Cache HOT 3
- Unnecessary spaces are in "AVAILABLE OPTIONS" in help page
- Add verbose mode or something like it
- Configure credentials via command line. Proposal HOT 7
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from scottyjs.