Skip to content

Commit 8bdf0cb

Browse files
author
Shlomi Noach
authored
Merge pull request github#5 from github/skeefree-updates
Skeefree: updates
2 parents 50b85a8 + b89fa43 commit 8bdf0cb

File tree

3 files changed

+4
-3
lines changed

3 files changed

+4
-3
lines changed

skeefree/docs/how-action.md

+3-2
Original file line numberDiff line numberDiff line change
@@ -34,11 +34,12 @@ As result, an action has no access to our production databases, to the `skeefree
3434

3535
`skeema` is an actively developed open source tool. It's objective is to operate schema management cycles. It can both diff schema changes as well as apply them. However:
3636

37-
- While it integrates with `pt-online-schema-change` it does not (yet) integrate with `gh-ost`. While we could write the integration it doesn't follow that we'd want `skeema` to be the one to run `gh-ost`.
37+
- `skeema` integrates with `pt-online-schema-change` and with `gh-ost`. However, we do not use `skeema` to invoke `gh-ost`.
3838
- Right now `skeema` runs from within the Action scope, and obviously cannot run anything in production, let alone multi-day migrations.
3939
- If we were to then extract `skeema` from Actions and run it from the outside, we'd be duplicating flow.
4040
- We'd still be unable to run `skeema` on our `k8s` servers: remember, schema changes can run for hours and days.
41-
- Last, we want to be able to run concurrent migrations (on different clusters), and to schedule migrations; so, much of the logic we already need to take care of, ourselves.
41+
- We want to be able to run concurrent migrations (on different clusters), and to schedule migrations; so, much of the logic we already need to take care of, ourselves.
42+
- We were building on top of already-existing-and-proven infrastructure. If we were to build `skeefree` from scratch, the design may have been different.
4243
- Entirely possible `skeema` offers something more that we could use, but the above illustrates how we got here.
4344

4445
And so we only use `skeema` up to the point it generates _diff_ statements. This is no small feat. `skeema` is doing this job fantastically:

skeefree/docs/how.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ Some of the operations depicted in the above are best dealt with using designate
1111

1212
As result, the complete flow is not owned by any single process. The flow is a coordination of efforts by multiple processes, communicating with each other in different ways. There are three main actors in the flow:
1313

14-
- [skeema-diff](how-action.md): a GitHub Action utilizing [skeefree](https://github.com/skeema/skeema) to generate diff statements and annotate with labels
14+
- [skeema-diff](how-action.md): a GitHub Action utilizing [skeema](https://github.com/skeema/skeema) to generate diff statements and annotate with labels
1515
- [skeefree](how-skeefree.md): this repo, acting as the controller; detects PRs, puts context to the migration, runs the migrations, provides visibility and control via chatops.
1616
- [gh-ost](how-gh-ost.md): our schema migration tool, uses a `skeefree` binary together with hooks, to read schema migration assignments, execute and update status.
1717

skeefree/res/bin/skeema

-6.07 MB
Binary file not shown.

0 commit comments

Comments
 (0)