Do It All In Rust #8

Open
djsweet wants to merge 4 commits from djsweet/get-it-started-in-rust into main
2 changed files with 37 additions and 48 deletions
Showing only changes of commit 78a44157f6 - Show all commits

37
README.md Normal file
View file

@ -0,0 +1,37 @@
# smsbb 👼
✨ DIY sms announce lists for you and yours ✨
## norms for working on this repo
- work in a branch
- branch names should use the format `username/thing-you-are-doing`
- for example `git checkout -b maren/update-readme-3`
- don't worry about tidy commits! just keep your work in a branch
- open a PR and review with someone synchronously before merging to main
## getting started real fast
1. Make sure you have Rust (+ cargo) installed. The preferred way to do this
is with [rustup](https://rustup.rs).
2. Set up [an AWS Account](https://aws.amazon.com). Following the getting
started guide for the [AWS SDK For Rust](https://aws.amazon.com/sdk-for-rust/)
is a good way to get set up. We can confirm that this all works correctly
using Workforce Identity, i.e. establishing a profile in `~/.aws/config`,
setting the `AWS_PROFILE` environment variable appropriately, and using
`aws sso login` to get an access token.
3. With your preferred authentication mechanism set up (see above for
settings for Workforce Identity), run
```
cargo run
```
As of right this second, all the code does is set up DynamoDB tables.
The immediate future work here is:
1. Write code to provision AWS Pinpoint for each of smsbb's text campaigns
2. Figure out how to embed another Rust binary inside the main Rust binary
3. Use the embedded Rust binaries to deploy Lambda functions

View file

@ -1,48 +0,0 @@
# smsbb 👼
✨ DIY sms announce lists for you and yours ✨
## norms for working on this repo
- work in a branch
- branch names should use the format `username/thing-you-are-doing`
- for example `git checkout -b maren/update-readme-3`
- don't worry about tidy commits! just keep your work in a branch
- open a PR and review with someone synchronously before merging to main
## getting started real fast
Here's what to do if you haven't already set up your `GOPATH`:
1. Run `go env` and figure out how your Go installation is configured
with respect to your `GOPATH`:
```shell
$ go env | grep GOPATH
GOPATH='/home/you/go'
```
2. Set up this repository within your `GOPATH`:
```shell
# If GOPATH is /home/you/go, then...
$ cd ~/go && mkdir -p pkg/git.bunk.computer/bunk/smsbb && cd pkg/git.bunk.computer/bunk
$ git clone https://git.bunk.computer/bunk/smsbb
$ cd smsbb
```
3. Get your Twilio Account SID and Auth Token and store them in the following environment
variables:
```shell
$ export SMSBB_ACCT_SID="..." # Your Twilio Account SID goes here
$ export SMSBB_AUTH_TOKEN="..." # Your Twilio Auth Token goes here
```
4. Run `smsbb`:
```shell
# In this example, +1 (828) 555-0123 is the "from" address, and
# +1 (828) 555-4567 is the "to" address
$ go run smsbb.go "+18285550123" "+18285554567" "This is your first message\!"
```