Updating with AWS CLI

One of the difficulties of free-software projects is that you have to go through gitbub and a server restart in order to make the slightest change. Crystalball is like that too, except you have the in-app editing tools and also, the possibility to store the main configuration file in your s3 bucket. This file is called app-conf.json. When it’s stored on s3 you can make changes on a local copy and then update the s3 copy. Of course you could go into s3 and upload the new file, that would work. But it’s incredibly easy to do this using a command-line utility called AWS CLI. So you should install that, it’s worth it.

You can get the code here:

https://docs.aws.amazon.com/cli/latest/userguide/install-cliv2.html

Once you have installed it, you are going to configure it using the Amazon key and the Amazon secret key that you entered on the .env. Configuration instructions are here:

https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-quickstart.html#cli-configure-quickstart-config

Once you have that configured you can open a terminal and cd to the folder where you have the app-conf file stored on your local machine. Open the app-conf in a text editor and change something, such as the title. Then issue this command, which contains the URI that you noted above:

aws s3 cp app-conf.json s3://PROJECT/assets/settings/app-conf.json --acl public-read

If it works, that should give an output like this:

upload: ./app-conf.json to s3://maptime/assets/prod/settings/app-conf.json

Even better, go back to the online map and refresh it using ctrl-F5 (or whatever you Windows and Mac folks use to bypass the cache and get a clean refresh). If you have done it right, your title will have changed.

The vast majority of what you will do to make a map will be done with this file. The rest of the pages in this section tell you more about how to use it.