Skip to content

Commit

Permalink
Fix build
Browse files Browse the repository at this point in the history
  • Loading branch information
andrewpatto committed Nov 29, 2023
1 parent 85247fd commit 991aadb
Show file tree
Hide file tree
Showing 3 changed files with 49 additions and 8 deletions.
7 changes: 5 additions & 2 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,9 +20,12 @@ jobs:
- run: pnpm install

- name: Setup Rclone
uses: AnimMouse/setup-rclone@v1
uses: animmouse/setup-rclone@v1

- run: ./test-go-direct.sh
working-directory: packages/aws-copy-out-sharer/construct/rclone-batch-copy-docker-image
working-directory: packages/aws-copy-out-sharer/construct/rclone-batch-docker-image

- run: ./test-docker-direct.sh
working-directory: packages/aws-copy-out-sharer/construct/rclone-batch-docker-image
# - run: pnpm run build
# - run: pnpm run package
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,42 @@

`rclone-batch` is a Go wrapper around the invocation of `rclone`. Why do we need
a wrapper? Well we want to get the statistics output of `rclone` in a way
that we can standardise. Also, we want optionally to be able to send this info
back to the parent AWS ECS task. Furthermore, there are aspects of signal
handling that we want to support for AWS Spot that is not quite the same as
that we can standardise and use in our Steps DistributedMap results.

Also, we want optionally to be able to send this info
back to the parent AWS Steps via Task Tokens.

Furthermore, there are aspects of signal
handling that we want to support for Fargate Spot that is not quite the same as
`rclone` out of the box.

## How to dev?

A decent amount of development can be done without deploying anything
to AWS/CDK/Steps.

```shell
./test-go-direct.sh
```

Will compile the application and attempt some test copies. This is a purely
local invocation of the app with local temporary directories, made up local
files, and a local rclone binary.

This is good for

- checking the Go program compiles
- basic program logic

```shell
./test-docker-direct.sh
```

Will build the Docker image that is used by the parent AWS ECS, but then
invokes it directly, with a mount point to bind in a local temporary
directory.

This is good for

- checking the Docker configuration can build
- basic Docker sanity
9 changes: 6 additions & 3 deletions packages/aws-copy-out-sharer/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,8 @@
"type": "git",
"url": "git+https://github.com/elsa-data/aws-copy-out-sharer.git"
},
"main": "copy-out-stack.js",
"types": "copy-out-stack.d.ts",
"main": "out/copy-out-stack.js",
"types": "out/copy-out-stack.d.ts",
"scripts": {
"build": "jsii -vvv",
"build:watch": "jsii -w",
Expand All @@ -25,7 +25,10 @@
],
"jsii": {
"outdir": "dist",
"targets": {}
"targets": {},
"tsc": {
"outDir": "out"
}
},
"dependencies": {
"@elsa-data/aws-infrastructure": "^1.5.1"
Expand Down

0 comments on commit 991aadb

Please sign in to comment.