Posted on :: Tags: , , , , ,

๐Ÿ‡ Weโ€™ll start by checking the repository today. What are the most important issues?

๐Ÿข Iโ€™ve merged PR#66. Letโ€™s list the outstanding issues now.

65	OPEN	Add Mermaid Support to Netlify Installation
64	OPEN	Fix `xvc-storage` compilation warnings	bug
54	OPEN	Fix all references to `xvc data` in the documentation
51	OPEN	Add a benchmark script to compare Xvc with other tools
50	OPEN	Consider changing `xvc file push` to `xvc file send` and `xvc file pull` to `xvc file retrieve`
49	OPEN	Add `--generic-command` as a dependency type to `xvc pipeline dependency`
48	OPEN	Write rsync example for `xvc storage generic`	documentation
47	OPEN	Write rclone example for `xvc storage generic`	documentation
46	OPEN	Allow to skip init in remotes with `--skip-init` option
45	OPEN	Update `VStore::to_store` to use some internal mechanism to avoid `XvcStore::insert`
43	OPEN	Update to `clap 4.0`
42	OPEN	Clean up xvc crate dependencies
36	OPEN	Add version to released file binaries
33	OPEN	Update `arch/remotes.md` for new naming	documentation
32	OPEN	Remove arc42 sections from the documentation	documentation
29	OPEN	Add documentation for `xvc storage new gcs`	documentation
28	OPEN	`xvc storage new yandex`	enhancement
24	OPEN	Create a logo for Xvc	documentation
23	OPEN	Add a Github action to upload new versions to crates.io	automation
20	OPEN	ref: Add rsync example for `xvc storage new generic`
18	OPEN	Add a new workflow for remote tests	automation
12	OPEN	Create a website for Xvc
5	OPEN	Add storage tests to Github Actions	automation
4	OPEN	fix clippy warnings	bug
1	OPEN	`xvc storage new` for all S3 compatible cloud services supported by `rust-s3`

๐Ÿ‡ As far as I know, you removed the arc42 stubs from the docs yesterday. You can close issue #32.

๐Ÿข I closed it via gh issue close.

๐Ÿ‡ You should add a comment to that.

๐Ÿข Added the comment.


๐Ÿ‡ Itโ€™s October 30th. Looking at the logs, youโ€™ve closed some more issues since we last talked.

๐Ÿข Iโ€™ve been productive over the last few days. Now, letโ€™s take a look at the open issues.

๐Ÿ‡ I think you have a more pressing problem. Your tests are failing. You need to fix them first before moving to another task.

๐Ÿข Created a new issue. The logs say:

81Z error: 7 targets failed:
2022-10-29T18:18:36.8969467Z ##[error]    `-p xvc-workflow-tests --test test_storage_new_digital_ocean`
2022-10-29T18:18:36.8970697Z     `-p xvc-workflow-tests --test test_storage_new_gcp`
2022-10-29T18:18:36.8971279Z     `-p xvc-workflow-tests --test test_storage_new_generic_rsync`
2022-10-29T18:18:36.8971840Z     `-p xvc-workflow-tests --test test_storage_new_minio`
2022-10-29T18:18:36.8972387Z     `-p xvc-workflow-tests --test test_storage_new_r2`
2022-10-29T18:18:36.8973035Z     `-p xvc-workflow-tests --test test_storage_new_s3`
2022-10-29T18:18:36.8973577Z     `-p xvc-workflow-tests --test test_storage_new_wasabi`
2022-10-29T18:18:36.9368079Z ##[error]The process '/home/runner/.cargo/bin/cargo' failed with exit code 101

๐Ÿ‡ Looking at the logs, you should clean up those older branches.

๐Ÿข Letโ€™s do it now.


๐Ÿข Done. Iโ€™ve deleted all branches except main.

๐Ÿ‡ Good. I think the best way is to delete them as soon as you merge them.

๐Ÿข Iโ€™ve activated that setting. These were older branches.

๐Ÿ‡ Cool. Now, will you be checking the failing tests?

๐Ÿข I think remote tests should never run if there are other errors. We can run coverage and remote tests as a second step after the first succeed.

๐Ÿ‡ That seems like a neat idea. You want to split the current job into two: one for compiling and testing the non-remote parts, and the second for coverage and storage tests. It wonโ€™t waste CI minutes that way?

๐Ÿข On second thought, I think at the moment, thatโ€™s not a pressing issue. We should start fixing these tests at once. We can split them later.

๐Ÿ‡ Ok. It looks from the logs like secrets are not being made available to your jobs.

2022-10-29T18:18:17.5039311Z test test_storage_new_digital_ocean ... FAILED
2022-10-29T18:18:17.5039550Z
2022-10-29T18:18:17.5039652Z failures:
2022-10-29T18:18:17.5039784Z
2022-10-29T18:18:17.5040197Z ---- test_storage_new_digital_ocean stdout ----
2022-10-29T18:18:17.5040558Z Error: VarError { source: NotPresent }
2022-10-29T18:18:17.5040758Z
2022-10-29T18:18:17.5040765Z

๐Ÿข I added them now. Letโ€™s wait until the job ends to get a new set of logs.

๐Ÿ‡ You can write some documentation in the meantime.

๐Ÿข I think #82 is a good candidate for this. There must not be too many missing docs in the ECS crate.

๐Ÿ‡ It was about walker and you fixed the ecs. Youโ€™re the most absentminded developer here, I believe.

๐Ÿข Ooops, youโ€™re right. Iโ€™ll add them together in a single PR.

๐Ÿ‡ In the meantime, the storage testing job has ended with ๐Ÿ”ด.

๐Ÿข Checking the raw logs. It looks like we didnโ€™t update the tests to match the current options:

2022-10-30T14:45:50.1058348Z error: Found argument '--storage-prefix' which wasn't expected, or isn't valid in this context
2022-10-30T14:45:50.1059809Z ##[error]Found argument '--storage-prefix' which wasn't expected, or isn't valid in this context
2022-10-30T14:45:50.1061740Z 	If you tried to supply `--storage-prefix` as a value rather than a flag, use `-- --storage-prefix`
2022-10-30T14:45:50.1063220Z
2022-10-30T14:45:50.1063394Z USAGE:
2022-10-30T14:45:50.1064302Z     xvc storage new digital-ocean --name <NAME> --bucket-name <BUCKET_NAME> --region <REGION>

๐Ÿ‡ Is it --storage-prefix or --remote-prefix? Which one is clearer?

๐Ÿข I think updating the tests to conform to the current options is better for now. We can update the options later if desired.

๐Ÿ‡ Another failure is rg. You assume it exists on the testing system.

๐Ÿข ripgrep is available in Ubuntu 20.04, so we can just update the initial package list.

๐Ÿ‡ The same --storage-prefix failure appears in the minio tests.

๐Ÿข Ok. Fixing it.

๐Ÿ‡ S3 tests want to run the new-s3 subcommand. I think we now see why we need these tests in the first place.

๐Ÿข Yeah. Fixing the prefix option, too.

๐Ÿ‡ s3cmd is also required. You should add it, too.

๐Ÿข Ok. I think weโ€™ve added all missing dependencies. Iโ€™ll have to convert the mc tests for Minio to use s3cmd.

๐Ÿ‡ Then we can try again. Now, we can get back to documentation.

๐Ÿข Added some more documentation to PR#93. I think itโ€™s better to return to the storage test errors now.

๐Ÿ‡ It looks like you have missing DigitalOcean credentials.

๐Ÿข Letโ€™s take a look.


๐Ÿข Iโ€™ve updated the tests to use a config file instead of command-line arguments that would be visible in the logs.

๐Ÿ‡ Good practice. You also need to remove previous logs.

๐Ÿข Maybe there is an option for that.

๐Ÿ‡ It looks like there isnโ€™t. There are masking options; when we add them to secrets, they are masked. But you shouldnโ€™t use them in calls anyway.