Soil: Multi-cloud CI with containers

soil/__init__.py                                  0
soil/admin.sh                                    19
soil/collect_json.py                             35
soil/common.sh                                   92
soil/cpp-tarball.sh                              68
soil/diagnose.sh                                139
soil/github-actions.sh                          139
soil/github-tool.sh                              43
soil/history.sh                                  78
soil/host-shim.sh                               389
soil/maybe-merge.sh                             153
soil/sourcehut.sh                                81
soil/tests.sh                                    20
soil/timeout-test.sh                             50
soil/wait.sh                                    142
soil/web-init.sh                                174
soil/web-remote-test.sh                          46
soil/web-worker.sh                              353
soil/web.py                                     782
soil/web.sh                                     187
soil/web_test.py                                 52
soil/worker.sh                                  643

3,685 lines in 23 files