Commit Graph

152 Commits

Author SHA1 Message Date
Mario Vitale
429c41747c CLD-8395 Integrate playwright into E2E tests (#28492)
* Finalize Playwright E2E scripts integration, add videos
* Add suggestion by Saturn

Co-authored-by: Saturnino Abril <5334504+saturninoabril@users.noreply.github.com>

---------

Co-authored-by: Mattermost Build <build@mattermost.com>
Co-authored-by: Saturnino Abril <5334504+saturninoabril@users.noreply.github.com>
2024-10-09 13:05:11 +02:00
Andrew Zigler
d53a2ef4df Add Hacktoberfest 2024 Holopin badge to holopin.yml (#28288)
See https://github.com/marketplace/holopin for usage
2024-10-01 13:55:09 -04:00
Mario Vitale
8e2dc45841 Re-enable postgres migration tests (#28270)
* Utilize separate image for migration tests
* Re-enable migration tests
* Apply Ibrahim's suggestion
* Apply Saturn's suggestion
2024-09-24 17:50:12 +02:00
Mario Vitale
60b38bb91a Enhance reporting, add shellcheck (#28240)
* Enhance reporting, add shellcheck

---------

Co-authored-by: Mattermost Build <build@mattermost.com>
2024-09-20 15:05:51 +02:00
Mario Vitale
c27d536ad3 Checkout latest stable pgloader release (#28251)
* Checkout latest stable pgloader release
* Disable Mystql to Postgres migration check
2024-09-19 15:19:42 +02:00
Ibrahim Serdar Acikgoz
02dfc2d205 [MM-60510] .github/workflows: add a sync workflow for migration-assist (#28166) 2024-09-18 14:40:26 +02:00
enzowritescode
b94a11e591 Use Reusable SBOM Workflow (#28161)
* Use reusable SBOM workflow

---------

Co-authored-by: Mattermost Build <build@mattermost.com>
2024-09-12 08:12:11 -06:00
Agniva De Sarker
7086a8792a MM-60387: Bump Go version to 1.22 (#28118)
https://mattermost.atlassian.net/browse/MM-60387
```release-note
updated Go version to 1.22
```
---------

Co-authored-by: Mattermost Build <build@mattermost.com>
2024-09-05 19:29:29 +05:30
Mario Vitale
948f8941f0 CLD-7841 Optimize E2E testing costs (#27883)
* Utilize free runners for E2E tests, report back to PR on run completion
* Increase test stability on smaller instances
* Merge worker reports
* merge start+prepare steps
* upgrade keycloak
* increase test timeouts
* Add video recording to report artifacts

Co-authored-by: Saturnino Abril <5334504+saturninoabril@users.noreply.github.com>

---------

Co-authored-by: Saturnino Abril <5334504+saturninoabril@users.noreply.github.com>
2024-08-14 21:39:08 +02:00
enzowritescode
4c91ad8b61 Add SBOM generation on release (#27733)
* Add SBOM generation on release

* Fix release-note NONE in PR template
2024-08-14 09:31:18 -06:00
Mario Vitale
39ca104688 CLD-5783 Implement rolling upgrade tests (#27842)
* Make server.prepare idempotent, don't cleanup containers on server.start
* Implement rolling upgrade E2E tests
* Apply Akis' suggestions from code review
* Apply Saturn's suggestions from review
* Communicate RollingRelease on GHA and test automation results channel
* Implement E2E test case versioning for rolling release tests

---------

Co-authored-by: Mattermost Build <build@mattermost.com>
Co-authored-by: Akis Maziotis <akis.maziotis@mattermost.com>
2024-08-07 14:08:50 +02:00
Mario Vitale
88bbc9dcb8 Bump base image to Ubuntu 24 (#27729)
* Bump base image to Ubuntu 24

* Fix Noble dependencies

* Fix docker image build

---------

Co-authored-by: Mattermost Build <build@mattermost.com>
2024-07-25 14:23:37 +02:00
Mario Vitale
e05ec0efc3 Fix E2E test triggering (#27669)
Co-authored-by: Mattermost Build <build@mattermost.com>
2024-07-16 16:36:42 +02:00
Akis Maziotis
22604d4592 [fix] ci container image scanning (#27631)
Fixup on https://github.com/mattermost/mattermost/pull/27624
Exposing the tag variable to be used in the scanning step.

Ticket: https://mattermost.atlassian.net/browse/CLD-8041

Signed-off-by: Akis Maziotis <akis.maziotis@mattermost.com>
2024-07-12 08:34:56 +03:00
Akis Maziotis
0df1a62f61 [feat] adding container image scanning (#27624)
Expanding on our ongoing efforts to enhance security, we are integrating container image scanning into the CI pipeline using Wiz.io
https://docs.wiz.io/wiz-docs/docs/github-pipeline

The policy defined, will be providing internal reports in wiz.io for our teams to review. Will not enforcing CI failure at this point.
2024-07-12 00:50:22 +03:00
Mario Vitale
731f056f54 Support release testing (#27587)
* Support release testing
* Merge resolve-ref and generate-test-variables jobs
2024-07-10 16:47:26 +02:00
Amy Blais
5d2bf1ea1c Update ISSUE_TEMPLATE.md (#27538)
Automatic Merge
2024-07-03 23:57:50 +03:00
Mario Vitale
3169f98982 Fix concurrency for daily tests (#27480) 2024-06-28 10:08:18 +02:00
Mario Vitale
4f68dbb96e CLD-5704 Migrate daily master/cloud tests (#27393)
* [skip ci] Support Cloud/daily tests and Zephyr integration

* [skip ci] Fix workflow file

* [skip ci] Fix typo in workflow input name

* Fix cloud variable passing

* [skip ci] Fix typo

* Utilize master branch image for daily tests

* Apply Saturn's suggestion, fixes and improvements
2024-06-25 15:46:05 +02:00
Antonis Stamatiou
72644e72f6 fix: Add missing Github Token for download artifacts from other workflows (#27202) 2024-05-31 09:46:04 +03:00
Antonis Stamatiou
0d7a2cae6a fix: Update download action with the official one (#27194) 2024-05-29 19:30:37 +03:00
Antonis Stamatiou
97bbc549c8 fix: Fix buildEnv Dockerfile path (#27191) 2024-05-29 19:27:12 +03:00
Antonis Stamatiou
9d30a62c94 fix: Fix missing paths for build env docker image (#27190) 2024-05-29 13:41:28 +03:00
Antonis Stamatiou
d64ce93393 feat: Introduce build env image pipeline (#27189) 2024-05-29 11:39:17 +03:00
Andrew Zigler
50ac6fc0b5 feat(.github/holopin.yml): add holopin configuration file to manage community contributions (#26808)
The new holopin.yml file will help manage community contributions by assigning stickers to contributors. This will make it easier to recognize and appreciate the efforts of our community contributors, fostering a more engaging and rewarding open-source environment.

Co-authored-by: Mattermost Build <build@mattermost.com>
2024-05-24 09:13:28 +08:00
Mario Vitale
4a77d9e964 CLD-7553 Implement per-MM_ENV runs, post the E2E test links back to user (#27042)
* Add per-env runs, post feedback back to user
2024-05-21 10:55:05 +02:00
Antonis Stamatiou
4fd704d09b fix: Migrate notifications to reusable actions (#26792) 2024-04-21 21:10:50 -04:00
Mario Vitale
1b69f2d79f CLD-7473 Limit parallelism for full E2E tests (#26741)
* Limit parallelism for full E2E tests

* Add temporary changes for testing

* Better concurrency spec

* Do not consider github.ref for concurrency grouping

* Further improve the concurrency grouping

* Remove testing lines
2024-04-11 12:29:45 +08:00
Mario Vitale
dc36e42448 CLD-798 Add support for MM_ENV, various fixes (#26616)
* Add support for MM_ENV, various fixes
* Fix workflow template
* Fix reporting steps ordering
* Fix typo
* Improve state check message description
* Fix workflow syntax
* Fix fulltest variable generation
* Fix PR_NUMBER variable usage
* Fix BUILD_ID, add dashboard URL to status check
* Fix automation dashboard URL

---------

Co-authored-by: Mattermost Build <build@mattermost.com>
2024-04-03 12:14:19 +02:00
Agniva De Sarker
5e851f708b MM-57245: Bump up Go version to 1.21 (#26512)
* MM-57245: Bump up Go version to 1.21

https://mattermost.atlassian.net/browse/MM-57245
```release-note
NONE
```
2024-03-21 09:12:35 +05:30
Mario Vitale
d7a77d8c42 CLD-7074 Implement full E2E tests on Github Actions (#26093)
* Move license setting from env var to mmctl upload
* Extract common E2E steps
* Add E2E fulltests
* Fix plugin_startup_fail_spec.js, timeout runners, fix local dashboard run
* Implement reporting script and job
* Bump artifact related actions
* Fix E2E variable generator script
* Skip reporting steps if not required
* Get rid of deprecation warnings
* Fix inbucket hostname parameter
* Support arbitrary refs in test template
* Fix cycle BRANCH var for non-PR commits
---------

Co-authored-by: Mattermost Build <build@mattermost.com>
2024-03-06 11:27:53 +01:00
Antonis Stamatiou
cafcc2ac06 feat: Upgrade github actions for node20 (#26318) 2024-02-28 10:55:04 +02:00
Agniva De Sarker
f4fbc90e23 Move all PR tests to free tier (#25930)
After moving only contributor PRs to free tier it was
observed that the tests actually finish faster in free tier
than with larger runners. We have let the change soak for about
a month now without any issues.

Therefore we move to free tier runners for all PRs.
```release-note
NONE
```

Co-authored-by: Mattermost Build <build@mattermost.com>
2024-01-17 09:10:38 +05:30
Agniva De Sarker
04cf1ed114 Bump up the minimum required MySQL version (#25465)
MySQL 5.7 is at end of life.

https://mattermost.atlassian.net/browse/MM-55589

```release-note
We bump up minimum MySQL version to be 8.0.0
```


Co-authored-by: Mattermost Build <build@mattermost.com>
Co-authored-by: Ibrahim Serdar Acikgoz <serdaracikgoz86@gmail.com>
2024-01-11 22:18:20 +05:30
Antonis Stamatiou
f118b4f0ed fix: Fix condition for choosing runner (#25779)
* fix: Fix condition for choosing runner

* fix: Automate the GO_VERSION choice on server tests
2023-12-19 17:21:13 +02:00
Agniva De Sarker
983062189e Run contributor PR tests on free tier (#25745)
```release-note
NONE
```
2023-12-18 16:47:39 +05:30
Antonis Stamatiou
8158c0e614 feat: Add docker image on artifacts generation summary (#25469) 2023-11-20 09:45:19 +02:00
Antonis Stamatiou
7bf9be2619 fix: Add new dev registry for pr artifacts (#25341) 2023-11-14 15:04:00 +02:00
Nicolas Le Cam
1ed5d87342 Switch to docker compose v2 (#25048) 2023-11-13 14:30:24 +01:00
Jesse Hallam
c9e71a2dde Remove workflow failure check in favour of Argo-driven version (#25366)
* Simplify workflow failure check

Consolidate the workflow failure check directly into *-master.yml. This results in some code duplication, but makes it much clearer as to what's going on. While we're in here, remove the legacy reference to the `monorepo` branch when triggering.

* just remove the workflow in favour of the Argo version
2023-11-09 12:01:49 -04:00
Mario Vitale
2e7728b737 Fix the monorepo-checker CI job (#25287) 2023-11-03 17:31:42 +01:00
Mario Vitale
5d1cb1b931 Fix - Run artifacts workflow only for monorepo branches (#25279)
* Run artifacts jobs conditionally, add test change

---------

Co-authored-by: Mattermost Build <build@mattermost.com>
2023-11-03 16:10:40 +01:00
Antonis Stamatiou
fc87054f14 feat: Introduce go-version file to support multiple go versions on CI (#25271) 2023-11-03 16:25:54 +02:00
Jesse Hallam
83bd2746c3 fix yaml formatting issue (#25252) 2023-10-31 18:27:06 -03:00
Jesse Hallam
37dc35c1a1 report master/release-* failures (#25197) 2023-10-30 12:09:19 -03:00
Antonis Stamatiou
f01e8f6c6d [CLD-6501] Enhance visibility for PR builds artefacts (#25141)
Co-authored-by: Akis Maziotis <akis.maziotis@mattermost.com>
2023-10-25 18:22:15 +03:00
Jesse Hallam
c2bc4008fc prevent modifying non-English translation files (#25002) 2023-10-19 14:40:06 -03:00
Jesse Hallam
0577a5aaa2 Fix OpenApi vetting (#23974)
* fix openApi vetting

The underlying mattermost-govet tool effectively hasn't been called for some time, as we weren't checking out and building the spec files to pass. Now that hte API is in the monorepo, build it locally and check against it.

Unfortunately, our API documentation isn't up-to-date, and this PR isn't fixing that. For now, add a discrete `make vet-api` and workflow that won't block the build until the API documentation is back in sync and can be merged into the existing `make vet` directive.

* mattermost-govet: use upstream@new

* fix missing /api/v4 prefix for commands autocomplete suggestion

* document /api/v4/ldap/users/{user_id}/group_sync_memberships

* document /api/v4/groups/{group_id}/restore

* fix /files/{file_id}/public actually at root

* document /api/v4/users/invalid_emails

* fix SetThreadUnreadByPostId

* Revert "fix SetThreadUnreadByPostId"

This reverts commit b16bcc8044.

* Revert "Revert "fix SetThreadUnreadByPostId""

This reverts commit 8bda05dc8a.

* workaround undocumented API endpoints

* remove unnecessary whiteline

* ignore go tool output

---------

Co-authored-by: Mattermost Build <build@mattermost.com>
2023-10-16 11:27:43 -03:00
Agniva De Sarker
bd982356a7 Move mmctl CI tests to free tier (#24899)
Only the -race tests in master branch takes
more memory. So it will take more time, but there's no
need to optimize run time in master as nobody
is waiting for it to complete.

```release-note
NONE
```
2023-10-13 21:09:36 +05:30
Agniva De Sarker
4f279a1dd9 Set env vars properly when running mmctl tests (#24842)
Exporting a variable doesn't really pass that
down to the docker container. We pass the `--env`
variable manually.

```release-note
NONE
```

Co-authored-by: Mattermost Build <build@mattermost.com>
2023-10-11 11:12:18 +05:30