Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add StructuredEncryption smithy model and stubbed APIs #1

Merged
merged 13 commits into from
Aug 24, 2022
16 changes: 16 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
.idea/*
.vscode/*
*.sln*
**/.DS_Store
**/obj
**/bin
build/*
test/**/Output/*
/package-lock.json
/node_modules

# Duvet output
specification_compliance_report.html

# VS Code local history
/.history
6 changes: 6 additions & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
[submodule "libraries"]
path = libraries
url = [email protected]:dafny-lang/libraries.git
[submodule "polymorph"]
path = polymorph
url = [email protected]:awslabs/polymorph.git
15 changes: 15 additions & 0 deletions Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
build:
cd src/StructuredEncryption/src;\
dotnet build

test: build
cd src/StructuredEncryption/runtimes/net;\
dotnet test -f netcoreapp3.1 Test

generate-models:
cd polymorph/smithy-dotnet;\
./gradlew run --args="\
-m src/StructuredEncryption/model\
-namespace aws.cryptography.structuredEncryption\
--output-dotnet src/StructuredEncryption/runtimes/net/Generated\
-d src/StructuredEncryption/model"
41 changes: 36 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,11 +1,42 @@
## My Project
## DynamoDB Encryption Client for Dafny

TODO: Fill this README out!
TODO: Edit your repository description on GitHub

Be sure to:
### Development Requirements

* Change the title in this README
* Edit your repository description on GitHub
Right now this repo has a bare-bones Makefile to help with some building/testing.
The Makefile doesn't currently build dev requirements, so you will need to grab these yourself.

You will need at least:
- dotnet (I'm using v5.0.402)
- dafny (I'm using v3.4.0)

Additionally, I am working off a Mac and cannot guarantee that these commands will work on other platforms.

### Rebuild the model

```
make generate-models
```

Generates new models using the polymorph submodule.
Will overwrite models, but will not clean up old models that are not overwritten.

### Build and Verify Dafny Code

```
make build
```

Builds and verifies the dafny code.

### Run the tests

```
make test
```

Re-builds/re-verifies the dafny code and runs the dafny generated tests.

## Security

Expand Down
1 change: 1 addition & 0 deletions libraries
Submodule libraries added at 735839
1 change: 1 addition & 0 deletions polymorph
Submodule polymorph added at 7787db
Loading