Commit Graph

259 Commits

Author SHA1 Message Date
renovate[bot]
aa6242eb6d Update peter-evans/create-or-update-comment digest to 521ce1b 2023-02-07 09:45:48 +01:00
Daniel Lockyer
a8726036f5
Added Slack notification to Playwright tests
refs https://ghost.slack.com/archives/C02G9E68C/p1675094899771479

- this allows the team to know sooner when we've broken the Playwright
  tests
2023-01-31 08:56:51 +01:00
Daniel Lockyer
672d6b3f90
Added migration label to PRs containing migrations
- this helps us to filter PRs for migrations in the future
2023-01-26 15:46:47 +01:00
renovate[bot]
bac75b5d1d Update peter-evans/create-or-update-comment digest to e0e8aa0 2023-01-26 12:46:01 +01:00
renovate[bot]
e4d79a0bcf Update peter-evans/create-or-update-comment digest to 2cabc73 2023-01-20 14:11:31 +01:00
Daniel Lockyer
1af31bab1a ℹ️ Added support for Node 18
refs https://github.com/TryGhost/Toolbox/issues/488

- Node 18 is now LTS so we're adding support for it
- this adds Node 18.12.1 (the latest security release) to our supported
  ranges and CI
2023-01-04 11:27:39 +01:00
Daniel Lockyer
99c775be23
ℹ️ Bumped minimum Node version to 14.18.0
refs https://github.com/TryGhost/Toolbox/issues/488

- this is needed so we can bump some dependencies
- given how old these versions are, users should probably update past
  this anyway
2023-01-03 18:54:39 +01:00
renovate[bot]
9d577a2d5a Update peter-evans/create-or-update-comment digest to 66af805 2023-01-03 18:48:48 +01:00
Daniel Lockyer
8d18530f60
Revert "Bumped GHA Runners to larger machines"
- this reverts commit 921e9f4069
- we've been seeing issues with job scheduling so I'm reverting this for
  now
2023-01-03 17:56:03 +01:00
Daniel Lockyer
f512bd8eff
Bumped CI Node version to 16
refs https://github.com/TryGhost/Toolbox/issues/488

- Node 16 is our recommended version so we should run tests using that
2023-01-03 14:39:31 +01:00
Daniel Lockyer
921e9f4069 Bumped GHA Runners to larger machines
- this switches the testing CI over to larger 16 core machines we now
  have access to
2023-01-03 10:53:13 +01:00
renovate[bot]
24274fec0b Update actions/stale action to v7 2023-01-02 18:03:54 +01:00
renovate[bot]
ed6abe60be Update peter-evans/create-or-update-comment digest to 69c3c2d 2022-12-13 11:04:20 +07:00
Daniel Lockyer
f8dbda4629
Disabled browser tests on pull requests
- these tests shouldn't be running on pull requests yet as they don't
  have access to the environment secrets they currently require
2022-12-06 15:49:23 +07:00
Sam Lord
fe99a000f1 Enable browser job on workflow_dispatch
refs: https://github.com/TryGhost/Toolbox/issues/481
2022-12-05 14:48:39 +00:00
Sam Lord
d3716007bf
Fixed browser-based tests running in CI
refs: https://github.com/TryGhost/Toolbox/issues/481

* Correctly setup environment variable to run both local & staging browser-based tests
* Use non-production Ghost Admin build, since production builds require HTTPS to use Stripe Connect
2022-12-05 13:39:10 +00:00
Sam Lord
74d0fee125 Set a default environment for browser tests
no issue
2022-12-02 17:04:04 +00:00
Sam Lord
00d223991d Improved browser test CI integration
refs: https://github.com/TryGhost/Toolbox/issues/481
2022-12-02 17:04:04 +00:00
Daniel Lockyer
bc0b1f6adc Added CI for running Playwright tests
🚧
2022-12-02 17:04:04 +00:00
Sam Lord
8b80233ae6 Added sample Portal test to PlayWright suite
refs: https://github.com/TryGhost/Toolbox/issues/479
2022-11-24 17:47:04 +00:00
Daniel Lockyer
6a3ea02fed Enabled codecov coverage uploading for E2E tests
refs https://github.com/TryGhost/Toolbox/issues/475

- this enables uploading to codecov for the E2E tests, and separates the
  unit + E2E test results with flags
2022-11-17 12:44:54 +07:00
Daniel Lockyer
e1a6a083a5
Removed nested quotes
- for some reason these aren't working with the GitHub Actions workflow
2022-11-04 10:52:06 +07:00
Daniel Lockyer
0609ec2525
Fixed create-release-branch failing with non-core tags
- the create-release-branch workflow works by getting the most recent
  tag, bumping it and using that to create the new tag
- now we've moved Portal into the monorepo, we've got two different
  types of flags, but the Portal ones aren't valid semver so the
  workflow fails if the most recent tag is one for Portal
- this fixes that by ensuring we only fetch tags matching the pattern we
  use for tagging Ghost
2022-11-04 10:38:22 +07:00
renovate[bot]
14dfd618c3 Update peter-evans/create-or-update-comment digest to 7305482 2022-10-20 10:24:34 +07:00
Daniel Lockyer
0a322574a8
Increased frequency of stale bot execution to hourly
- daily is a little to infrequent for us as it means new comments don't
  cause the issue/PR to be unlabeled as `stale` for up to 24hrs
- this commit increases the frequency to hourly
2022-09-29 16:10:49 +07:00
Daniel Lockyer
6de598dec9
Loosened restrictions on GHA label-actions workflow
refs https://github.com/TryGhost/Toolbox/issues/381

- when using `pull_request`, the workflow doesn't have permissions to
  write to the PR in question
- there is another trigger - `pull_request_target` - but this comes with
  a heap of security warnings
- our use of it should be OK because we're only checking out our own
  Action and not code from the PR
- this commit also adds permissions to specify we only want write access
  to issues and PRs
2022-09-29 11:39:35 +07:00
Daniel Lockyer
6e3da6921e
Removed MySQL 5 from CI
closes https://github.com/TryGhost/Toolbox/issues/396

- we no longer support MySQL 5 so we shouldn't be running CI against it
- this cleans up use of MySQL 5 in GHA
2022-09-27 08:03:53 +07:00
renovate[bot]
f0a37a36ba Update actions/stale action to v6 2022-09-23 15:21:51 +01:00
Daniel Lockyer
4d63034bd2 Altered CI to upload coverage in one step
fixes https://github.com/TryGhost/Toolbox/issues/395

- we seem to be encountering issues with codecov where it randomly
  reports huge jumps in test coverage %
- I'm still not sure of the reason why, but the general trend in CI with
  codecov is to store test coverage files as artifacts and then submit
  them to codecov in one go
- this commit implements that in our CI
- let's see if this improves anything
2022-09-15 11:30:13 +01:00
renovate[bot]
82d5d20aa0 Update peter-evans/create-or-update-comment digest to 6fcd282 2022-09-13 09:17:20 +01:00
Daniel Lockyer
914775d55f
Fixed creating release branches
- we didn't clone the repo at the point when we were running a git
  command, so that failed
- switched to a different method of checking out `main` and then
  checking out the most recent tag
2022-09-06 15:46:49 +01:00
Daniel Lockyer
e80ab4fc46
Added support for latest when creating release branches
- this should allow us to run the job without any manual effort, because
  it'll choose the latest tag for the patch release
2022-09-06 15:39:10 +01:00
Daniel Lockyer
064e91fb2d
Added pull_request event type to label actions workflow triggers
refs https://github.com/TryGhost/Toolbox/issues/381

- we want to start collecting events from pull requests so we can label
  and reply upon certain events
- this adds the `closed` and `labeled` events to the workflow triggers
2022-09-05 11:53:46 +01:00
Daniel Lockyer
75ec41cbe2 Fixed typo in CI workflow if-statement
- apparently I should only use single quotes here?
2022-09-05 10:15:44 +01:00
Daniel Lockyer
6f5dbf7820
Fixed submitting multiple coverage reports per test run
refs https://github.com/TryGhost/Toolbox/issues/395

- I think we regressed somewhere along the line here, but we seem to be
  submitting two test coverage reports for the Admin tests and the unit
  tests
- I'm not sure if this fixes the random issues we've been seeing with
  -5%/+14% coverage bumps but it should clean this issue up first
2022-09-05 10:06:12 +01:00
Daniel Lockyer
82c3e6b6a4
Fixed several issues with create-release-branch job
- uses the `semver` bash tool so we don't have to deal with NPM
  dependencies
- also cleans up the env variables
2022-09-01 21:23:26 +01:00
Daniel Lockyer
4e85343a94
Installed semver globally in CI workflow
- if we install it locally, it'll run into issues with colliding with
  Ghost's package versions
2022-09-01 20:48:25 +01:00
Daniel Lockyer
4ba26364a7
Added workflow to create release branches
- right now, we use an internal CI solution to create branches for patch
  releases, but it's difficult to use
- this workflow should allow the team to create release branches from
  the GitHub UI, without delving into our internal tooling
2022-09-01 20:43:07 +01:00
Daniel Lockyer
f04666ef52
Removed Admin production build test
- this was originally added because we had an issue with a production
  build of Admin during a release
- since then, we've got a canary build that runs for every commit on
  `main`
- I think this test is superfluous now, so this commit removes it and
  saves ~6 mins of CI time per commit
2022-08-31 11:21:22 +01:00
renovate[bot]
19befe7d56 Update peter-evans/create-or-update-comment digest to 5fdb3a6 2022-08-29 08:34:13 +01:00
Daniel Lockyer
60b8cb1a30 Updated CI runners to Ubuntu 22.04
refs https://github.com/actions/runner-images/issues/6002

- Ubuntu 18.04 is now deprecated in GHA
- this commit moves all tests onto 22.04 except the Admin integration
  tests because they're failing to pick Firefox up
- I can look into this after we've unblocked CI
2022-08-22 15:37:19 +02:00
Daniel Lockyer
efc10b501e
Re-enabled Ghost-CLI tests in CI
- this required some reworking for the new monorepo setup, but this
  commit should now enable the Ghost-CLI tests in CI again
- also switched upgrade test to v4 to support Node 16
2022-08-22 11:40:13 +02:00
renovate[bot]
30a9b5d1fa Update peter-evans/create-or-update-comment digest to 7aef7e4 2022-08-19 10:17:25 +02:00
Daniel Lockyer
d3a8b64f20
Added name to Custom build workflow
- this was missed from the previous commit but makes it prettier to read
2022-08-19 08:54:38 +02:00
Daniel Lockyer
f133e6af4d
Added workflow to build custom version of Ghost
refs 7913283c96

- you can supply a branch and a version to call it, and it'll produce a
  zip of the tarball you can use
- this should avoid the need for local builds, which are error prone
2022-08-19 08:52:33 +02:00
Daniel Lockyer
e77fedf9b2
Allowed label actions workflow to be run manually
- we might want to manually trigger the workflow outside of the
  schedule/event-driven flow
2022-08-17 09:26:56 +02:00
Daniel Lockyer
54aa9f016b Fixed full Admin test suite running during unit tests
- because of how the npm scripts were set up, we were running the full
  Admin integration tests during the unit tests phase of CI
- this commit renames the majority of `test` to `test:unit` in the
  package.json files, and aliases `test` to `test:unit`
- special packages like Admin have no-op'd `test:unit` scripts so we
  don't end up running its tests
2022-08-15 15:34:52 +02:00
Daniel Lockyer
fa25b72495
Disabled stalebot on PRs
fixes https://github.com/TryGhost/Toolbox/issues/350

- we don't want to mark PRs as stale because they might contain
  wonderful contributions ❤️
2022-08-08 21:31:20 +02:00
Daniel Lockyer
5b6544504b
Configured stale issues to be closed as not_planned
- if an issue goes stale, it shouldn't show up in GitHub as completed
2022-08-08 12:57:19 +02:00
Daniel Lockyer
a55d00f209
Fixed wrong command used for production build test
refs dd41929251

- this was missed from the previous commit
2022-08-05 09:59:52 +02:00
Daniel Lockyer
ddcff9621d
Updated all GitHub-owned Actions to v3
- updating to v3 gives us the Latest And Greatest ™️
- really, it only bumps these workflows to Node 16, which is still fine
  with me
2022-08-03 22:33:28 +02:00
Daniel Lockyer
8878c50c43
Fixed formatting of Canary workflow
- this was a typo from the previous commit, the `uses` should be outside
  of `steps`
2022-08-03 17:26:10 +02:00
Daniel Lockyer
0c7239b22b
Refactored testing workflows
refs https://github.com/TryGhost/Toolbox/issues/365

- re-arranged tests so Admin ones are grouped together
- required Admin tests to pass to run Canary build
2022-08-03 17:19:23 +02:00
Daniel Lockyer
cd5a8979bf
Added Admin CI test matrix
refs b0a776fd25

- this ports over the test that was delete in the workflow file in the
  referenced commit
2022-08-03 16:35:58 +02:00
Daniel Lockyer
b0a776fd25
Migrated production build test from Admin
refs https://github.com/TryGhost/Toolbox/issues/365

- the .github/workflows/test.yml in Admin needed to be merged with the
  top-level GHA folder so this test needed porting
- there is still the browser matrix testing to port once things are
  stable
2022-08-03 16:14:52 +02:00
Daniel Lockyer
72411a3a4a
Added workflow_dispatch trigger to Release workflow
- this allows us to manually trigger a release from a tag
2022-07-26 09:31:20 +02:00
Daniel Lockyer
e292bf3258
Removed 5.0 branch from CI triggers
- this was leftover from work towards v5 but is no longer needed
2022-07-25 11:22:38 +02:00
Daniel Lockyer
8dd2b036ab
Added Release workflow
- this re-adds the Release workflow using a templated Action
2022-07-25 08:36:42 +02:00
Daniel Lockyer
fc1f651db6
Fixed disabling of Ghost-CLI tests
- conditional binding rules are difficult so let's just make it simpler
2022-07-22 12:20:40 +02:00
Daniel Lockyer
c6e4127eaa
Removed ghost-cli dependency for canary build
- I had to disable ghost-cli tests whilst we're converting to a
  monorepo, so the canary build isn't triggered
2022-07-22 10:36:47 +02:00
Daniel Lockyer
5940fa630b
Fixed linting and unit tests running on all packages
- this was leftover from the transition to a monorepo but we should be
  running linting and tests on all packages
2022-07-21 09:44:45 +02:00
Daniel Lockyer
e0a12166fc
Enabled unit testing for all packages in CI
- again, a slight hack but this enables us to run tests for all packages
  in CI right now
2022-07-20 17:43:55 +02:00
Daniel Lockyer
b65816f421
Disabled Ghost-CLI test
- this is broken for now until I have dependency bundling working for
  the monorepo
2022-07-20 17:30:48 +02:00
Daniel Lockyer
70110a39cc
Deleted Release GitHub Action
- I don't want it accidentally triggering whilst I'm importing packages,
  and it's likely to change anyway in the near future
2022-07-20 17:16:07 +02:00
Daniel Lockyer
6f1e7fc40f
Fixed migration review action target paths
- now we've moved to a monorepo, the paths have changed
2022-07-20 16:50:33 +02:00
Daniel Lockyer
3d989eba23 Converted Ghost repo into a monorepo
refs https://github.com/TryGhost/Toolbox/issues/354

- this commit turns the Ghost repo into a monorepo so we can bring our
  internal packages back in, which makes life easier when working on
  Ghost
2022-07-20 16:41:05 +02:00
Daniel Lockyer
8be9db7bcf
Merged v5.4.1 into main
v5.4.1
2022-07-19 16:01:04 +02:00
Daniel Lockyer
1ba2988e98
Added v5.* to workflow triggers
- this is needed so we run CI tests on release branches
2022-07-19 15:21:42 +02:00
Daniel Lockyer
48194ff444
Refactored release workflow
- up until now, we've been running `grunt release` before publishing to
  NPM or pushing the canary zip
- this command runs the production asset build and generates a zip
- this zip isn't used by the NPM publishing task because that does an
  `npm pack`
- we only use it for the canary build, but this should be brought more
  inline with the NPM process to make the gaps smaller
- this commit refactors the `grunt release` task to become a lot smaller
  by removing the generated zip steps
- the expected workflow is now to just to an `npm pack`, which will run
  the `prepack` task to generate a `.tgz` archive
- this should still respect `.npmignore`, so it'll just include the
  files we expect
- the test of the canary workflow is being updated to handle this
- also cleans up a dev dependency that is no longer used, along with 2
  imports
2022-07-19 08:32:54 +02:00
Renovate Bot
dc3a6a4eaa Update peter-evans/create-or-update-comment digest to b95e16d 2022-07-07 08:59:57 +02:00
Daniel Lockyer
6a3f61f62a Fixed database environment variables leaking across matrix runs
refs https://github.com/TryGhost/Toolbox/issues/244

- due to the way we currently set the env vars, they get applied across
  all matrix variations
- this means we're leaking the variables for SQLite to the MySQL test
  runs and this shows a warning because of how strict `mysql2` is
- this commit switches to optionally setting the env variables
- this is a partial workaround for fbcdacbd83/core/shared/config/utils.js (L55-L76) not seeming to work
2022-06-02 09:49:22 -04:00
Daniel Lockyer
264678e9be
Prevented certain GitHub Actions workflows from running on forks
fixes https://github.com/TryGhost/Toolbox/issues/285

- without this, some of the workflows that are only useful for the core
  team will run on forks
- this commit adds checks to ensure we're running on a repo maintained
  by the TryGhost organization for a handful of workflows
2022-06-01 17:54:26 -04:00
Daniel Lockyer
14828399e0
Reverted Ghost-CLI CI test to bumping minor version
- now we've released 5.0, we don't need to bump to the next major so we
  can just bump to the next minor
2022-05-24 09:20:57 +02:00
Daniel Lockyer
cb80be3d0c
Fixed migrations running in CI tests
- we needed to bump the major version so 5.0 migrations will run in CI
- I'm also switching the Migrations test to delete all 5.x migrations
  and re-run them to test idempotency
2022-05-09 11:49:53 +01:00
Daniel Lockyer
3171df4102
🔥 Dropped support for Node 12
refs https://github.com/TryGhost/Toolbox/issues/267

- Node 12 becomes EOL on April 30th so we're going to be dropping
  support for it in Ghost
- this commit updates the Node engine ranges so CLI can pick this up,
  and drops 12.22.1 from the CI matrix
2022-04-19 15:53:44 +01:00
Daniel Lockyer
6d5a8c6b31 Bumped Ghost-CLI test Node version to v14
refs https://github.com/TryGhost/Toolbox/issues/267

- we're about to remove support for Node 12 so this needs bumping to
  keep things chugging along
2022-04-19 15:44:43 +01:00
Daniel Lockyer
a109cca55c
Added 5.0 branch to CI trigger
refs https://github.com/TryGhost/Toolbox/issues/273

- ahead of 5.0, we need to make sure we're running development branch tests on CI
2022-04-05 09:31:54 +01:00
Daniel Lockyer
c187b3d182
Extracted Canary workflow to template
refs 4aee97472e

- the referenced commit copied the workflow file to our shared templates
  repository
- this commit switches to using that template
- this should help reduce duplication when we're doing v5
2022-03-31 08:27:18 +01:00
Renovate Bot
bf6188e331 Update peter-evans/create-or-update-comment digest to 26f0786 2022-03-28 14:30:20 +01:00
Renovate Bot
96503862bf Update peter-evans/create-or-update-comment digest to 704bc87 2022-03-24 12:07:09 +00:00
Daniel Lockyer
a7074592c8 Configured CI to only calculate coverage for recommended Node version
- we seem to be getting some odd numbers when running c8 on Node 12, and
  it's causing our CI checks to fail
- even when we're adding tests, the coverage value goes down
- this is disrupting the team from shipping, so we need to change that
- this commit alters the setup to run unit tests w/ c8 for Node 16 unit
  tests, and without c8 for other versions
- `yarn test:unit` is kept the same for everyday use
2022-03-07 13:45:33 +00:00
Matt Hanley
cd081e46fb Removed migration requirement for sqlite 2022-03-04 11:27:04 +00:00
Renovate Bot
e4df868886 Update actions/upload-artifact action to v3 2022-03-04 11:02:53 +01:00
Renovate Bot
5220083470 Update actions/stale action to v5 2022-03-03 14:56:07 +01:00
Daniel Lockyer
bf6f607f42 Switched to mysql2 library
refs https://github.com/TryGhost/Toolbox/issues/174

- this commit switches Ghost from using the `mysql` library to the
  `mysql2` one
- we've done this for several reasons:
  - `mysql2` is more actively maintained
  - `mysql2` natively supports the default auth plugin on MySQL 8
  - `mysql2` is fasterrrr
- there have been various other commits refactoring the groundwork for
  this commit but this commit should be short and sweet:
  - alias `mysql` to `mysql2` client so we maintain backwards
    compatibility with all configs who use `"client": "mysql"`
  - enabled `decimalNumbers` so we maintain the same functionality as
    `mysql`
  - replaced the dependencies and updated `knex-migrator`
  - hardcoded the newer authentication plugin in MySQL 8 CI. Before
    switching to `mysql2`, this would break because it didn't support
    this
2022-03-03 09:59:37 +01:00
Renovate Bot
83af4795e2 Update actions/checkout action to v3 2022-03-02 08:06:56 +01:00
Renovate Bot
d87a8f1a6e Update actions/setup-node action to v3 2022-03-01 08:31:42 +01:00
Hannah Wolfe
3bd8e01495 Pinned coverage to current levels to prevent drops
- Updating our config to have `--check-coverage` enforces that the coverage meets a certain level.
- The default is 95 I believe, but our coverage is lower.
- I've set the levels to our current levels, so any drop below these numbers will cause the build to fail.
- I've also set the reporters to be text, html and cobertura so we always have a mini report, the full HTML files to navigate and cobertura for CI
- Cleaned up CI so we don't use the cov:unit command as we're now using codecov
- This also means we can remove the cov:unit command which was weird to use because it uses the last test run, which can be confusing
2022-02-24 09:56:06 +00:00
Daniel Lockyer
33d4a711e0
Fixed inputs being passed as env variables in CI
- turns out we need `github.event` prepended to the variable for it to
  work
2022-02-17 12:25:30 +01:00
Daniel Lockyer
b1bb2ad8e8
Fixed syntax of inputs in CI workflow
- the inputs should be under an `inputs` key - not sure where that went
  missing
2022-02-17 12:20:29 +01:00
Daniel Lockyer
1a0362f3db Added demo E2E browser test
refs https://github.com/TryGhost/Toolbox/issues/207

- we want to start writing some E2E tests that involve automated
  pointing and clicking around the frontend of Ghost to test that
  members of Ghost sites can still do what we expect
- we've decided to look in to Playwright for this - it looks __really__
  nice
- this is a VERY basic first test - it'll check for a 200 on the
  homepage of whatever we provide as the TEST_URL env variable, or
  default to a (manually-run) Ghost instance on port 2368
- also adds a `yarn test:browser` command to run the tests using the
  Playwright CLI, and a sample GitHub Action workflow which we can
  manually run with a site URL
- there's a lot more to add here in terms of test framework but this
  gets us started
2022-02-17 12:16:58 +01:00
Daniel Lockyer
08eaed152b Added yarn test:ci command
refs https://github.com/TryGhost/Toolbox/issues/208

- we currently run all test commands separately in CI and this can make
  it harder to replicate any issues we see in CI because we have to
  manually go and copy the order of the tests
- it's also nicer if there's just one command that runs so we can make
  changes globally to CI
- this commit adds a test:ci yarn command which will run the tests in
  order of speed/importance, with the -b AKA fail-fast flag so we
  don't have to wait for all tests to run before finding out about
  issues
- this also cleans up running unit tests in the DB matrix
2022-02-16 19:22:20 +01:00
Daniel Lockyer
7a5b262a84 Renamed CI test workflows
- these names are a little more descriptive and look better in GitHub
2022-02-16 19:22:20 +01:00
Daniel Lockyer
d4759d30a7 Split out unit tests from CI matrix
refs https://github.com/TryGhost/Toolbox/issues/208

- unit tests (shouldn't) be database dependent so they don't need to be
  included in the DB matrix
- this prevents an extra 6 executions of unit tests, which isn't a big
  deal given they only take 10s to run, but semantically they belong
  outside so this commit does that
- also updates the canary step to rely on this extra test run
2022-02-16 19:22:20 +01:00
Daniel Lockyer
f55f2b1587
Added check for Ghost-CLI logs in CI
no issue

- we might fail the tests but not produce any logs in Ghost-CLI
- concatenating the logs would then fail because of the lack of existence
  of a directory
- this commit adds a check that files exist before trying to get the
  contents of the files
2022-02-04 09:40:26 +01:00
Renovate Bot
79609632b1 Update peter-evans/create-or-update-comment commit hash to 63e171a 2022-01-31 08:45:43 +00:00
Daniel Lockyer
2122a47ce0 Added MySQL 8 to CI tests
refs https://github.com/TryGhost/Toolbox/issues/181

- we officially support MySQL 8 but we don't run tests for it -- oops
- this commit adds MySQL 8 to the DB matrix in CI tests
- I had to switch to a fork of the `mysql-action` repo so I could get
  the native authentication plugin working, but I expect to revert this
  once we've merged support for mysql2
2022-01-25 12:23:15 +00:00
Daniel Lockyer
34e8c299e7
Added concurrency option to test workflow in CI
refs
https://docs.github.com/en/actions/learn-github-actions/workflow-syntax-for-github-actions#example-using-a-fallback-value

- CI sometimes becomes clogged up with concurrent runs for a PR if the
  PR is updated
- this sometimes happens when we merge a bunch of Renovate PRs and other
  PRs rebase on top of `main` multiple times
- we shouldn't continue to run tests for PRs if the branches have been pushed
  to since they started
- from the referenced link above, this is the built-in solution that
  cancels previous in-progress runs if a new job starts
2022-01-14 10:26:26 +00:00
Joe Grigg
60ff6d4267 Updated github release action to use new main branch of ghost-release
no issue

- We have switched over to using the new git standard of using the main branch rather than master.
2022-01-11 16:09:58 +00:00
Sam Lord
845ed665f0 Prevent TailScale failures from breaking the build
no issue

Includes a timeout if TailScale is completely inaccessible, and a
continue-on-error statement which should handle all forms of
failure. The following step also includes a continue-on-error step, as
reporting metrics depends on TailScale succeeding, and should also
never fail the build.
2021-12-14 09:37:38 +00:00