Skip to content

Latest commit

 

History

History
353 lines (330 loc) · 46.3 KB

CHANGELOG.md

File metadata and controls

353 lines (330 loc) · 46.3 KB

Changelog

v0.10.0

  • gateway: unify/improve handling of authenticated user (@sgotti) #525
  • gateway: move remaining get of current user from api to action (@sgotti) #524
  • gateway: fix commit status and run webhook deliveries api (@alessandro-sorint) #521
  • tests: fix wrong ProjectCommitStatusRedelivery test (@alessandro-sorint) #522
  • cmd/export: close file descriptor (@testwill) #516
  • objectstorage: multiple updates and changes (@sgotti) #519
  • runservice: fix objectsCleaner lock key usage (@sgotti) #520
  • util: use generic Ptr function (@sgotti) #518
  • *: update dependencies (@sgotti) #517
  • api: add some missing http content types headers. (@sgotti) #514
  • config: add docker registries auth nil check (@alessandro-sorint) #513
  • configstore: move logic from db to action handler (@sgotti) #511
  • *: update dependencies (@sgotti) #512
  • *: add detailed errors to api responses (@sgotti) #507
  • *: use do method in http handlers (@sgotti) #508
  • gateway: add action.APIErrorFromRemoteError (@sgotti) #506
  • errors: split wrapped error from APIError message (@sgotti) #505
  • configstore: move last bits of logic from api to action (@sgotti) #504
  • configstore: fix wrong error handling (@sgotti) #503
  • validation: add min/max length check to name validation (@sgotti) #499
  • *: update to go 1.22 (@sgotti) #498
  • sqlg updates (@sgotti) #495

v0.9.0

  • agolademo: use docker compose (@sgotti) #494
  • executor: add option to define docker driver network (@sgotti) #493
  • Dockerfile: agolademo: create agola directories (@sgotti) #491
  • Dockerfile: update final image (@sgotti) #489
  • notification: fix cleaners infinite loop. (@sgotti) #487
  • *: add cursor fetching to GetRuns api (@sgotti) #484
  • tests: always check testutil.Wait error (@sgotti) #485
  • tests: improve and simplify some tests (@sgotti) #483
  • tests: split tests in multiple files. (@sgotti) #482
  • *: actions: ensure a default sort direction (@sgotti) #480
  • *: commitstatus/runwebook delivery save filter inside cursor (@sgotti) #481
  • configstore: simplify/improve Get tests (@sgotti) #478
  • notification: simplify/improve Get tests (@sgotti) #479
  • tests: simplify Get API with cursor tests (@sgotti) #477
  • runservice: add AGOLA_RUN_COUNTER variable (@alessandro-sorint) #473
  • gateway: add api to redeliver a commit status delivery (@alessandro-sorint) #472
  • gateway: fix api cursors (@alessandro-sorint) #471
  • notification: fix db func GetProjectRunWebhookDeliveriesAfterSequenceByProjectID (@alessandro-sorint) #470
  • notification: fix db func GetProjectCommitStatusDeliveriesAfterSequenceByProjectID (@alessandro-sorint) #468
  • tests: use assert helpers (@sgotti) #469
  • testutil: Add NilError helper to log detailed test errors (@sgotti) #466
  • testutil: add detailed errors for zerolog output in tests (@sgotti) #465
  • notification: rename GetProjectRunWebhookDeliveriesAfterSequence func (@alessandro-sorint) #467
  • gateway: add api to get commit status deliveries (@alessandro-sorint) #460
  • runservice: remove time.sleep from tests (@sgotti) #464
  • configstore: remove time.sleep from tests (@sgotti) #462
  • notification: remove time.sleep from tests (@sgotti) #461
  • notification: delete old commit statuses (@alessandro-sorint) #459
  • notification: delete old run webhooks (@alessandro-sorint) #457
  • gateway: add api to redelivery a run webhook delivery (@alessandro-sorint) #456
  • gateway: add api to get run webhook deliveries (@alessandro-sorint) #452
  • configstore: fix test get remotesources continuation (@alessandro-sorint) #455
  • db: defer sqlite foreign keys during migration (@sgotti) #454
  • runservice: return right error on not existing run (@alessandro-sorint) #451
  • *: update dependencies (@sgotti) #449
  • configstore: add ability to org members to restart stop cancel a project run (@alessandro-sorint) #446
  • *: update to go 1.21 (@sgotti) #448
  • *: add cursor fetching to GetOrgs api (@sgotti) #444
  • testutils/db: handle col type bool on export (@sgotti) #447
  • testutils/db: use schema provided by migrate data during export (@alessandro-sorint) #445
  • notification: store commit status and commit status delivery (@alessandro-sorint) #432
  • gateway: cleanup org invitation code. (@sgotti) #443
  • gateway: correctly handle org/pg visibility (@sgotti) #442
  • *: add cursor fetching to GetRemoteSources api (@sgotti) #440
  • testutils/db: use sequences provided by create data during import (@alessandro-sorint) #441
  • *: add cursor fetching to GetUserOrgs api (@sgotti) #439
  • *: add cursor fetching to GetUsers api (@sgotti) #437
  • ci: increase postgres container max connections (@sgotti) #438
  • *: cursor based list api. (@sgotti) #436
  • cmd: rename gateway client variable. (@sgotti) #435
  • tests: use const for remote error string output (@sgotti) #433
  • ci: use fixed postgres image version (@sgotti) #434
  • tests: add missing t.Parallel to TestRunEventsNotification (@sgotti) #431
  • configstore: clean TestOrgInvitation tests (@sgotti) #429
  • notification: store last run event sequence (@alessandro-sorint) #423
  • notification tests: synchronously start webhooksreceiver (@sgotti) #426
  • notification: make webhooksreceiver a test file. (@sgotti) #425
  • notification: store webhook and webhook delivery (@alessandro-sorint) #413
  • testutils/db: handle byte array (@sgotti) #420
  • sqlg: add support for blob/byte array base type (@sgotti) #419
  • *: Optional internal services authentication (@sgotti) #412
  • services: use common SetupDB function (@sgotti) #414
  • config: add global urls fields (@sgotti) #411
  • config: avoid updating the default config (@sgotti) #410
  • add ability to send webhooks to external tools (@alessandro-sorint) #367
  • examples: add cookieSigning config (@sgotti) #408
  • *: update db generators and tests (@sgotti) #407

v0.8.0

Important Upgrade Notes

Agola v0.8.0 moved its internal db based on etcd and objectstorage to a standard external sql database (PostgreSQL or sqlite for single node deployments).

If you are going to update from a version <= v0.7.x you should do some manual steps to migrate the runservice and configstore data.

These steps are provided in the migration documentation

Changes from v0.7.0

  • gateway: fix GetUserGitSource action (@alessandro-sorint) #404
  • gitsources: split oauth2Client from gitsource (@sgotti) #403
  • runservice/db: fix get run query (@alessandro-sorint) #402
  • migrateexport: defer sqlite foreign keys (@sgotti) #400
  • configstore: add some db constraints (@sgotti) #399
  • *: new db schema (@sgotti) #398
  • executor: fix k8s test (@sgotti) #397
  • cmd: fix run list task api call (@sgotti) #364
  • runservice: use dedicated api types for executor communication (@sgotti) #396
  • *: use github.com/sorintlab/errors (@sgotti) #395
  • *: organize imports and add gci linter (@sgotti) #394
  • executor: close cache archive file before sending (@sgotti) #390
  • github: update github ssh key (@sgotti) #392
  • configstore: fix remote source ssh_host_key update (@sgotti) #391
  • gateway: skip csrf check only on successful token auth (@sgotti) #389
  • gateway: use auth cookies instead of jwt tokens (@sgotti) #365
  • *: Fix auth flow with password based remote source (@sgotti) #388
  • *: improve some error handling/logging (@sgotti) #387
  • ci: update images (@sgotti) #386
  • *: update dependencies (@sgotti) #385
  • tests: parallelize tests (@sgotti) #384
  • util: add wrapper error helper type (@sgotti) #375
  • *: enable stylecheck and fix related lint warnings. (@sgotti) #383
  • *: update to go 1.20 (@sgotti) #376
  • *: remove deprecated use of io/ioutil package (@sgotti) #377
  • tests: fix failing gitea pull request creation (@sgotti) #374
  • tests: cleanups (@sgotti) #373
  • configstore: fix GetOrgInvitations db action (@alessandro-sorint) #368
  • util: fix empty APIError error message printing (@sgotti) #370
  • integration tests: fix TestMaintenance (@alessandro-sorint) #369
  • add cmd import, export, maintenance for runservice and configstore (@alessandro-sorint) #340
  • gateway/client: add GetOrgs (@alessandro-sorint) #366
  • tests: remove repeated strings (@alessandro-sorint) #361
  • gateway: add admin api to get remote source user (@alessandro-sorint) #353
  • db: improve transactions handling (@sgotti) #363
  • *: implement org member adding modes: direct or invitation (@alessandro-sorint) #285
  • tests: improve tests setup (@sgotti) #359
  • configstore: use GetOrg method in DeleteOrg (@alessandro-sorint) #356
  • configstore: fix deleteUser query (@alessandro-sorint) #354
  • *: add api to update organization (@alessandro-sorint) #349
  • configstore: fix action AddOrgMember (@alessandro-sorint) #352
  • Handle remote repo default branch (@alessandro-sorint) #303
  • gateway: add GetUserGitSource action to get user gitsource (@alessandro-sorint) #348
  • runservice: add tasks timeout (@alessandro-sorint) #331
  • runservice: added logcleanerLoop for deleting older logs (@alessandro-sorint) #294
  • *: fix updating of user linked account (@sgotti) #346
  • executor: use a timeout for pod creation (@alessandro-sorint) #343
  • executor: avoid locking during setupTask (@alessandro-sorint) #344
  • update to go 1.18 (@alessandro-sorint) #336
  • services config: correctly use yaml tags instead of json tags (@sgotti) #341
  • types: add custom Duration type (@alessandro-sorint) #342
  • executor: fix synchronization when pod is starting (@alessandro-sorint) #293
  • gateway: return task containers image names in RunTaskResponse (@tulliobotti64) #338
  • *: replace etcd and datamanager with a sql db (@sgotti) #328

v0.7.0

  • runconfig: temporary enable ssh client ssh-rsa sha1 signature algorithm (@sgotti) #333
  • configstore: update api and action request types (@sgotti) #329
  • *: change gateway runs api (@sgotti) #323
  • *: replace os errors check functions with errors.Is (@sgotti) #325
  • config: add ability to take the docker registry encoded auth from a variable (@alessandro-sorint) #296
  • runconfig: fix missing generation of dockerregistryauth auth field (@alessandro-sorint) #298
  • test: use T.TempDir to create temporary test directory (@Juneezee) #324
  • cmd: fix run list panic on task with nil exit status (@sgotti) #314
  • tests: don't start gitea for direct runs test (@sgotti) #312
  • *: use new errors handling library (@sgotti) #321
  • *: use zerolog for logging (@sgotti) #320
  • *: Improve error handling (@sgotti) #313
  • *: use errors.Is/errors.As to handle wrapped error checking (@sgotti) #319
  • ci: update golangci-lint to v1.44.2 (@sgotti) #315
  • gateway: use dedicated auth context keys type (@sgotti) #317
  • gateway: add api to get authenticated user organizations (@tulliosorintdev) #299
  • go.mod: replace https://github.com/satori/go.uuid (@sgotti) #311
  • ci: update gitea to v1.15.11 (@alessandro-sorint) #305
  • gitserver: add cleanup of old repos/branches (@alessandro-sorint) #284
  • runconfig: test task generation with on_skipped dependencies (@alessandro-sorint) #302
  • runconfig: add case statement for on_skipped (@raeyulca) #290
  • config: fix executor ActiveTasksLimit yaml tag (@alessandro-sorint) #279
  • *: migrate to golang-jwt/jwt (@sgotti) #276
  • fix: gitea fetch remote repository with pagination (@ygbillet) #273
  • executor: add init image config authentication options (@sgotti) #271
  • executor: use busybox:stable as default init image (@sgotti) #270
  • executor/docker: pull init image only when needed (@sgotti) #269
  • executor: add config option to define the init image (@sgotti) #268

v0.6.0

  • *: update to go 1.16 (@sgotti) #257
  • gitserver: fix fetchfile error handling (@sgotti) #258
  • Remove WaitingApproval for stopped tasks (@camandel) #253
  • example: fix gitserverURL in example config (@sgotti) #250
  • add content-type header for /config.js (@ftsell) #249
  • vendor: update gitea sdk v0.11.0 -> 0.12.0 (@6543) #241
  • *: update to go 1.14 (@sgotti) #217
  • config: check max config size (@sgotti) #239
  • config: add starlark config support (@sgotti) #232
  • run: export also ref type environment variable to runs (@sgotti) #231
  • run: export also pull request id environment variable to runs (@sgotti) #230
  • config: provide jsonnet context top level argument (@sgotti) #141
  • runconfig: disable password authentication in clone step (@sgotti) #229
  • runservice: correctly handle skipped tasks in fetcher (@sgotti) #226
  • github: add issue templates config (@sgotti) #227
  • runservice: fix handling of wrong executortask status (@sgotti) #225
  • executor: use cancellable context in executetask (@sgotti) #224
  • executor: fix stopping of not running tasks (@sgotti) #223
  • runservice: use all scheduled tasks in scheduleRun (@sgotti) #220
  • executor: fix reporting of stopped tasks and steps (@sgotti) #222
  • executor: serialize task handling (@sgotti) #221
  • runservice: minimize scheduling of tasks that will be queued by the executor (@sgotti) #218
  • runservice: mark not running tasks as skipped when run marked to stop (@sgotti) #219
  • gateway: move authentication apis to /api/v1alpha/auth (@sgotti) #215
  • go.mod: update dependencies (@sgotti) #213

v0.5.0

  • gitsources: handle skipverify also in oauth2 requests (@sgotti) #208
  • github: handle nil user email (@sgotti) #207
  • cmd: remotesource create don't force github defaults (@sgotti) #205
  • github: use the provided api url (@sgotti) #206
  • vendor: update gitea sdk (@6543) #203
  • makefile: remove test target (@sgotti) #202
  • cmd: project option to disable passing variables to PR from forked repo (@camandel) #198
  • doc: document supported go versions. (@sgotti) #201
  • Update github.com/opencontainers/runc (@MitaliBo) #195
  • cmd: fix token create help message (@camandel) #196
  • tests: add unique name for logs of the third ConfigStore instance (@camandel) #197
  • tests: improve services logging (@sgotti) #194
  • docker: create a toolbox volume for every pod (@sgotti) #193
  • datamanager tests: don't wait for etcd down (@sgotti) #189
  • cmd: add TaskID to run list output (@camandel) #188
  • cmd: add details to run list (@camandel) #185
  • cmd: add log get and delete subcommands (@camandel) #187
  • gateway: fix api used by GetRunTask (@camandel) #186
  • cmd: fix project visibility switch (@camandel) #184

v0.4.0

  • gateway/runservice: add api to delete step logs #157
  • *: write and flush header on log handlers (@sgotti) #180
  • runservice: improve errors in logsHandler (@sgotti) #179
  • runservice: use etcd mutex TryLock on fetching (@sgotti) #177
  • gateway: add api to get log status (@camandel) #175
  • *: use etcd mutex TryLock (@sgotti) #176
  • datamanager: skip already applied wals in writeDataSnapshot (@sgotti) #167
  • readdb: improve HandleEvents goroutine exiting (@sgotti) #172
  • datamanager tests: increase etcd waitdown timeout (@sgotti) #174
  • *: improve error handling (@sgotti) #169
  • objectstorage: use a single package (@sgotti) #170
  • datamanager: refactor ReadWal (@sgotti) #168
  • datamanager: check wal previouswalsequence is correct in initEtcd (@sgotti) #165
  • datamanager: don't create ost wal checkpointed files (@sgotti) #164
  • datamanager: clean old data files (@sgotti) #160
  • datamanager: fix index creation on multiple data files (@sgotti) #163
  • services: check config only for enabled services (@camandel) #162
  • datamanager: add data sequence to data file name (@sgotti) #158
  • sequence: add tests for String and Parse methods (@sgotti) #159
  • go.mod: update dependencies (@sgotti) #150
  • run config: add tty option for run steps (@camandel) #149
  • README: issue link points to templates (@camandel) #156
  • objectstorage: add WriteObject tests (@sgotti) #155
  • objectstorage: return object size in objectinfo (@sgotti) #154
  • objectstorage posix: use limitreader only when size is specified. (@sgotti) #153
  • objectstorage s3: use limitreader in write object (@sgotti) #152

v0.3.0

  • gitea: use GetRepoRefs instead of GetRepoRef (@sgotti) #146
  • when: fix typo in tag matching (@sgotti) #147
  • cmd: add run create command (@sgotti) #144
  • gateway: fix project create run http method (@sgotti) #143
  • docker: mount multiple volumes (@camandel) #142
  • gitsources: don't set branch value when in a pull request (@sgotti) #140
  • when: match only the current ref type (@sgotti) #139
  • *: implement ability to add tmpfs volumes to containers (@sgotti) #136
  • cmd: add version command (@camandel) #135
  • datamanager: remove some logs from tests (@sgotti) #134
  • cmd: add completion command (@camandel) #133
  • cmd: add project group delete command (@sgotti) #132
  • cmd: add project group update command (@sgotti) #131
  • gateway: add parentRef field to project group update api (@sgotti) #130
  • configstore: implement project group move (@sgotti) #128
  • configstore: disable root project group deletion (@sgotti) #129
  • cmd: add project update command (@sgotti) #123
  • tests: wait gitea ready (@sgotti) #127
  • gateway: add parentRef field to project update api (@sgotti) #122
  • cmd: fix version output (@camandel) #126
  • Add github issue templates (@sgotti) #125
  • configstore: implement project move (@sgotti) #121
  • cmd: fix typos in online help (@camandel) #124
  • cli: add secret/variable list subcommand (@camandel) #118
  • config: add clone options (@camandel) #120
  • gateway: api implement get secrets removeoverridden (@sgotti) #119
  • skip run with special commit (@camandel) #90
  • executor: add missing mutex unlock (@sgotti) #117
  • gateway: run api return more step data (@sgotti) #116
  • runservice: save step exitstatus in run. (@sgotti) #115
  • runservice: don't save executor task data in etcd (@sgotti) #113
  • runservice: add run workspace cleaner (@sgotti) #109
  • executor: set the container exec user in every step (@sgotti) #112
  • runconfig: set task default shell (@sgotti) #111
  • runservice: remove run step user (@sgotti) #110
  • *: update to go 1.13 (@sgotti) #105
  • gitserver: don't return http response/error when calling external git process (@sgotti) #103
  • util: Fix PathList output when path ends with slashes (@sgotti) #102

v0.2.0

  • agola run: update to agola-web v0.2.0 (@sgotti) #100
  • types: use a global When type (@sgotti) #99
  • agola run: update to agola-web v0.1.2 (@sgotti) #95
  • README.md: update screenshots (@sgotti) #96
  • agola run: build images and push them when on a v.* tag (@sgotti) #94
  • runservice: fix get tasks to run (@sgotti) #93
  • tests: add wait function in place of sleep (@sgotti) #92
  • cmd: fix variable create/update (@sgotti) #91
  • update example in devel doc (@camandel) #89
  • config: fix check on task and parents with common deps (@sgotti) #88
  • userdirectrun: add options to define variables (@sgotti) #86
  • Dockerfile: update to debian buster (@sgotti) #85
  • executor: listen on wildcard address (@sgotti) #84
  • config: add run when field (@sgotti) #78
  • userdirectrun: allow setting destination branch/tag/ref (@sgotti) #83
  • tests: test also clone step (@sgotti) #82
  • docker driver: use fixed client api version (@sgotti) #81
  • docker driver: use toolbox exec (@sgotti) #80
  • *: export clients and related types (@sgotti) #77
  • configstore: move configstore types inside configstore package (@sgotti) #76
  • util: remove time.go (@sgotti) #75
  • executor: set task endTime when marking as failed (@sgotti) #71
  • executor: fix typo in setting task endTime when setup failed (@sgotti) #70
  • runservice: fix/improve executor delete logic (@sgotti) #69
  • runservice: maintenance/export/import (@sgotti) #68
  • configstore: maintenance/export/import (@sgotti) #67
  • util: use context in backoff (@sgotti) #66
  • readdb: close and open readdb on Run (@sgotti) #65
  • *: use sleep timer in loops (@sgotti) #64
  • db: use context functions (@sgotti) #62
  • datamanager: implement import/export (@sgotti) #63
  • datamanager: implement maintenance mode (@sgotti) #61
  • go mod: update golang.org/x/xerrors (@sgotti) #60
  • db: retry on sqlite locked error (@sgotti) #59
  • readdb: fix deadlock in Run method (@sgotti) #58
  • runservice: stop run also if result is not set (@sgotti) #57