Solidity contract artifact release manager
Exposing the JSON ABI for your smart contracts enables opensource contributions, development and makes collaboration easier for your daaps (decentralized applications) . Even if you are not developing an daap for public collaboration it is useful to expose these JSON files within your dev organization. These JSON files are the product of truffle compilation when using truffle to build daaps. This project is a github webhook server written in Go that will upload your configured JSON ABI files to S3 for public consumption whenever you release a new version of your daap.
-
aws: Your s3 regions and bucket configuration The server will attempt to upload each JSON file to all your S3 regions
-
projects: This is the configuration for different projects your server will handle
- name: The name of the project on github
- artifacts: File names of the JSON ABI's you need uploaded
[aws]
regions = ["us-east-1"]
bucket = "badgeforce-artifacts"
[[projects]]
name = "badgeforce"
artifacts = ["Issuer.json", "Holder.json"]
[[projects]]
name = "super-daap"
artifacts = ["ABI.json", "Token.json"]
Build and run
$ go build
$ ./doug
Doug will upload your JSON ABI files to your S3 bucket in this form
bucket-name/project-name/version/file-name