Commit graph

508 commits

Author SHA1 Message Date
6543 edbf6a3ba9
Allow to change status context again (#674)
* use flag value

* fix test

* sed -i 's/STATUS_CONTEXT/WOODPECKER_STATUS_CONTEXT/g'

* docs

* Update docs/docs/91-migrations.md

Co-authored-by: Anbraten <anton@ju60.de>
2022-01-29 20:37:36 +01:00
6543 b6e47a3f4a
Update deps (#724)
* update github.com/containerd/containerd v1.5.7 -> v1.5.9

* update github.com/lib/pq v1.10.3 -> v1.10.4

* update github.com/prometheus/client_golang v1.11.0 -> v1.12.0

* update github.com/rs/zerolog v1.25.0 -> v1.26.1

* update golang.org/x/crypto 2021-12-15 -> 2022-01-28
2022-01-29 16:04:50 +01:00
Anbraten 50570cba5c
Automatically determine platform of agent (#690)
* Automatically determine platform of agent

* add migration hint

* cleanup docs a bit
2022-01-17 15:19:30 +01:00
6543 2f91bdd4a0
gofumpt -w -l -extra . (#661) 2022-01-05 21:50:23 +01:00
6543 dec0eeeed7
Use global branch filter only on events containing branch info (#659)
- close #581
- delete unused code
- simplify code
- add check to procBuilder to fail on invalid config
2022-01-05 17:54:44 +01:00
6543 e8807c5e53
Add "woodpeckerci/plugin-docker-buildx" to privileged plugins (#623)
* refactor global const in own package

* add "woodpeckerci/plugin-docker-buildx" to privileged plugins

* add woodpeckerci/plugin-docker
2021-12-19 12:46:36 +01:00
6543 ef597eca0c
Add flag for not fetching permissions (FlatPermissions) (#491) (#625)
Co-authored-by: Alex Eftimie <alex.eftimie@getyourguide.com>
2021-12-19 12:04:29 +01:00
Anbraten 3bee9044f1
Add flag to set oauth redirect host in dev mode (#586) 2021-12-13 20:22:09 +01:00
Anbraten 33a657103e
hide gin output from normal starts (#603) 2021-12-12 22:49:30 +01:00
6543 4cbdacb21c
Nits Collected over last month (#595)
- add coverage.out
- add context queue
- fix misspell
- sanitize config: WOODPECKER_GITEA_URL
- storage backend migration should have no xorm session within migration function
2021-12-11 13:15:04 +01:00
6543 f1e2f3dcad
Add log-level option to cli (#584)
* add log-level option to cli

* use app.Before

* rm not needed
2021-12-10 21:49:22 +01:00
6543 4ea00f0035
Make cancel pipeline work again (#585)
* logger: on level debug or trace add caller to logs

* more logging

* fix cancel bug

* ignore error if occur for queue cancel
2021-12-08 23:40:00 +01:00
Lukas 680d003a29
Add linter revive (#554)
* Add linter revive

* Add underscore to variable name to prevent shadowing

* Remove unnecessary leading underscore

* Revert changes to vendor file

* export ConfigFetcher as interface

* no 'yoda conditions'

* rename envsubst

Co-authored-by: 6543 <6543@obermui.de>
2021-12-01 14:22:06 +01:00
6543 88236d8d59
godotenv use autoload everywhere (#548) 2021-11-27 03:01:06 +01:00
6543 5e6b38e0e7
Server obtain remote from glob config not from context (#540) 2021-11-26 13:01:54 +01:00
6543 8b476e7722
Simplify web router code (#541) 2021-11-26 09:50:56 +01:00
Anbraten c1a8884d62
Add backend selection for agent (#463)
- add backend selection option
- by default it will auto-detect a backend
2021-11-26 03:34:48 +01:00
6543 ff8ad5bb83
Fix registry delete (#532)
- Make make it possible to delete `"§4fda`
- Reject non urls for registry-address
- Fix #520
2021-11-25 19:04:36 +01:00
Lukas fac0e16996
Add linter staticcheck (#535)
* Add linter staticcheck

Co-authored-by: 6543 <6543@obermui.de>
2021-11-25 17:15:36 +01:00
Lukas 116c310820
Add linter misspell (#530)
* Add linter misspell

* Fix spelling

Co-authored-by: Anbraten <anton@ju60.de>
2021-11-24 02:01:12 +01:00
Lukas 25bf91bd37
Add linter whitespace (#531) 2021-11-24 01:31:11 +01:00
6543 fe31fb1e06
Drop error only on purpose or else report back or log (#514)
- Remove Deadcode
- Simplify Code
- Drop error only on purpose
2021-11-23 15:36:52 +01:00
6543 51617e7f86
Rename struct field and add new types into server/model's (#523)
Resolve some todos in server/model:
 * Move persistent queue into its own package
 * Create Types: StatusValue, SCMKind, RepoVisibly
 * Rename struct Repo fields: SCMKind, IsSCMPrivate
2021-11-22 12:55:13 +01:00
6543 ca8e215cfa
Migrate to Xorm (#474)
close #234

* Migrate store
* Migrate tests
* Rewrite migrations
* Init fresh DB in on step
* Rm old stuff (meddler, sql files, dead code, ...)
2021-11-13 20:18:06 +01:00
6543 f02789c74a
Fix bug where db file is posible moved outside of docker volume (#496)
#494 introduced a bug, where a migration function can remove the sqlite3 file outside of the mounted docker volume.
that would result in a data lose after a container recreate.

this fix it by only rename the file if in same folder else just use the old path as fallback and put warnings into the log

Co-authored-by: Anbraten <anton@ju60.de>
2021-10-30 14:53:24 +02:00
Anbraten 06800cb61e
Change paths to use woodpecker instead of drone (#494)
* change paths to use woodpecker instead of drone

* improve sql file migration

* add migration notice
2021-10-28 14:02:43 -05:00
6543 798c2bc8b2
Upgrade urfave/cli to v2 (#483)
* migrate urfave/ci v1 -> v2
* refactor cli (format flag)
* log error if agent can not listen on port 3000

close #452
2021-10-27 21:03:14 +02:00
6543 5990d32fd3
More logging and refactor (#457)
* only use "context"
* enable 'h2' support at server
* trace log  remote and database config
* log loglevel on start
2021-10-19 11:44:49 +02:00
John Olheiser 8e658c135d
Add log level API (#444)
* Add log level API

Signed-off-by: jolheiser <john.olheiser@gmail.com>

* Update cli/loglevel/loglevel.go

Co-authored-by: Anbraten <anton@ju60.de>

* Move API to api routes

Signed-off-by: jolheiser <john.olheiser@gmail.com>

Co-authored-by: Anbraten <anton@ju60.de>
2021-10-18 18:25:20 -05:00
John Olheiser 03bb0e69d8
Replace debug with log-level flag (#440)
* Add logging level to CLI and API

Signed-off-by: jolheiser <john.olheiser@gmail.com>

# Conflicts:
#	server/router/router.go

* Apply suggestions from code review

Co-authored-by: Anbraten <anton@ju60.de>

* Refactor log level

Signed-off-by: jolheiser <john.olheiser@gmail.com>

* Remove API

Signed-off-by: jolheiser <john.olheiser@gmail.com>

* Fix API imports

Signed-off-by: jolheiser <john.olheiser@gmail.com>

* do not relay on external default

Co-authored-by: 6543 <6543@obermui.de>
Co-authored-by: Anbraten <anton@ju60.de>
2021-10-16 17:41:36 -05:00
Anbraten 4cc8594b63
Update links to woodpecker-ci.org (#445) 2021-10-14 18:13:57 +02:00
John Olheiser 12db87f8e6
Change prometheus namespace to woodpecker (#439)
Signed-off-by: jolheiser <john.olheiser@gmail.com>
2021-10-13 08:34:57 +02:00
Anbraten f779860ff1
Add web-config.js endpoint (#433)
This is a preparation for #245 and adds a new endpoint (`.js``file) which can be included by the web-ui to get some config and credentials like the user profile or access-token.
2021-10-12 18:21:13 +02:00
Anbraten 3d6bc43ff1
Remove unused repo-config option (#432) 2021-10-12 12:00:03 +02:00
John Olheiser 4276a04f0c
Move entirely to zerolog (#426)
Completely switch to zerolog

(Remove usage of logrus and std logger)

Signed-off-by: jolheiser <john.olheiser@gmail.com>
Co-authored-by: 6543 <6543@obermui.de>
2021-10-12 09:25:13 +02:00
Masaya Watanabe 7913d6db95
Fix channel buffer used with signal.Notify (#421)
Co-authored-by: Anbraten <anton@ju60.de>
2021-10-09 03:14:25 +02:00
6543 5d8e60808d
Move cli exec flags to own file (#380)
Co-authored-by: Anbraten <anton@ju60.de>
2021-10-03 15:07:39 +02:00
6543 169e7e5aa3
Refactor Gitlab Remote (#358)
- Replace custom client
- Update Docs
- Test if it works
- Update Tests

close #285
2021-10-03 14:42:47 +02:00
Anbraten bb37836600
Replace drone strings with woodpecker (#391)
Co-authored-by: 6543 <6543@obermui.de>
2021-10-02 10:59:34 +02:00
Anbraten ed6d3f3cea
Use go embed for web files and remove httptreemux (#382)
- replace togo with go embed
- replace httptreemux with gin

closes #308
2021-09-29 17:34:56 +02:00
6543 7f3a6eb17f
Update Generated Proto Code (#351)
update generated code (definitions, client implementation & server interface)
and add documentation how to generate
2021-09-29 02:10:09 +02:00
Marian Steinbach 17b8867b96
Clean up config environment variables for server and agent (#218)
The goal here is to make consistent use of configuration environment variables prefixed `WOODPECKER_`. Where several variants existed, this PR aims to remove all but one option, leaving the most explicit.

This PR only changes server and agent code, but not documentation, in order to keep the PR digestible. Once we have consensus that this is correct, I'll change docs accordingly.

User (rather: admin) facing changes in this PR:

- In general, support for all server and agent config environment variables (env vars) starting with `DRONE_` is removed. The according `WOODPECKER_*` variables must be used instead.
- The env var `WOODPECKER_HOST` replaces `DRONE_HOST`, and `DRONE_SERVER_HOST`.
- The env var `WOODPECKER_AGENT_SECRET` is used to configure the shared secret which agents use to authenticate against the server. It replaces `WOODPECKER_SECRET`, `DRONE_SECRET`, `WOODPECKER_PASSWORD`, `DRONE_PASSWORD`, and `DRONE_AGENT_SECRET`.
- The env var `WOODPECKER_DATABASE_DRIVER` replaces `DRONE_DATABASE_DRIVER` and `DATABASE_DRIVER`.
- The env var `WOODPECKER_DATABASE_DATASOURCE` replaces `DRONE_DATABASE_DATASOURCE` and `DATABASE_CONFIG`.
2021-09-28 15:43:44 +02:00
6543 f81bd8c656
Extend Logging & Report to WebHook Caller back if pulls are disabled (#369)
* Add more logging 
* Format Code
* Add TODOs
* Fix nits
* Delete two unused functions
* Report to WebHook Caller back if pulls are disabled
2021-09-27 23:32:08 +02:00
6543 a94807efeb
Refactor: move model/ to server/model/ (#366) 2021-09-27 19:51:55 +02:00
6543 06d83c7b0e
Remote Gitea drop basic auth support (#365)
you now have to set **gitea-client** and **gitea-secret**.
2021-09-27 08:11:11 +02:00
Anbraten 0fa271f465
Add json schema and cli lint command (#342)
- Add json schema file
- Add tests to validate sample pipeline files
- Add new command `lint` to cli to test a directory or single file to use correct schema

Example:  `woodpecker-cli lint ./pipeline/schema/.woodpecker/`

---
close #275 
preparation for #276 


Co-authored-by: 6543 <6543@obermui.de>
2021-09-27 02:38:15 +02:00
Anbraten bd19f90756
Replace www-path with www-proxy option for development (#248)
By adding a new ENV variable called `WOODPECKER_WWW_PROXY` it is possible to serve a webinterface via a proxy configured by the `WOODPECKER_WWW_PROXY` value for development instead of serving the interface from the bundled code or from some folder location as the old `WOODPECKER_WWW` option allowed. Using a proxy allows developing the UI with hot-reloading.
2021-09-27 00:22:23 +02:00
6543 0bd10fa507
Cleanup Code (#348)
* Fix "Empty slice declaration using a literal"
* Fix "collides with imported package name"
* Remove unused code in pipeline
* Remove unused oauth2.providerAuthHeaderWorks()
* Add TODOs
* Format Code
* Cleanup doublestar import
* Migrate deprecated functions

Co-authored-by: Anbraten <anton@ju60.de>
2021-09-24 16:29:26 +02:00
Jacob Floyd e34daae0cf
Move cncd/pipeline/pipeline/ to pipeline/ (#347)
* Refactor: move cncd/pipeline/ to pipeline/

* Refactor: move pipeline/pipeline/ to pipeline/
2021-09-24 13:18:34 +02:00
Jacob Floyd a0d008e071
Move cncd/{logging,pubsub,queue}/ to server/{logging,pubsub,queue}/ (#346)
* Move cncd/{logging,pubsub,queue}/ to server/{logging,pubsub,queue}/

* Update REAMDEs and include history

Co-authored-by: Anbraten <anton@ju60.de>

Co-authored-by: Anbraten <anton@ju60.de>
2021-09-23 22:29:09 +02:00
Jacob Floyd 780c902a6b
Refactor: move remote/ to server/remote/ (#344) 2021-09-23 18:25:51 +02:00
Jacob Floyd bfb9af121c
Create agent/ package for backend agnostic logic (#338)
* Refactor: Move agent stats structs to agent/

Based in part on changes by laszlocph (kube branch):
7f4a0c8c12 Factor into Runner
f7fe9edd0b Using Runner in server

* Refactor: Add Runner constructor with counter field

Based in part on changes by laszlocph (kube branch):
7f4a0c8c12 Factor into Runner
f7fe9edd0b Using Runner in server

* Refactor: Move Runner to agent/ package

Based in part on changes by laszlocph (kube branch):
7f4a0c8c12 Factor into Runner
f7fe9edd0b Using Runner in server

* Refactor: pass pipeline.backend.Engine into agent.Runner

Based in part on changes by laszlocph (kube branch):
7f4a0c8 Factor into Runner
f7fe9ed Using Runner in server

* Use well-known function signature for WriteTo

* Rename stats.go -> state.go

Co-authored-by: Anbraten <anton@ju60.de>
2021-09-23 16:58:12 +02:00
Jacob Floyd e2b59787c1
Move plugins/ package to server/plugins/ (#343) 2021-09-23 16:12:46 +02:00
Jacob Floyd 5fe712cca6
Move package store/ to server/store/ (#341)
* Refactor: move store/ to server/store/

* fix pipeline for moved tests

Co-authored-by: 6543 <6543@obermui.de>
2021-09-23 13:33:59 +02:00
Jacob Floyd b8f55f31e2
Move router package to server/router/ (#339) 2021-09-22 22:41:32 +02:00
Jacob Floyd 35a45b7961
Reorganize code into server/{api,grpc,shared} packages (#337)
* move api code to server/api
* move grpc server for agent communication to server/grpc
* move server.Config to server/config.go as it is used by both server/api and server/grpc
* move shared code used by server/api and server/grpc to server/shared
2021-09-22 20:48:01 +02:00
Anbraten b3d40024a9
Rename cmd agent and server folders and binaries (#330)
Renamed `cmd/drone-agent` to `cmd/agent` and `cmd/drone-server` to `cmd/server` and binaries to get rid of the drone name.
2021-09-21 17:06:13 +02:00
Anbraten 188b9e6eb5
Refactor cli (#329)
- move cli files from `cli/drone` to `cli/`
- move cli main to `cmd/cli/main.go` to match agent and server
- use version from `version/version.go` to match agent and server
2021-09-21 16:36:41 +02:00
Anbraten 289f0c9ad6
Change pipeline config path resolution (#299)
# Config resolution
- pipeline-config setting empty / not specified (default): `.woodpecker/` => `.woodpecker.yml` => `.drone.yml`
- pipeline-config setting defined by user: try that file / folder and no fallback (if a user sets some special value that is normally done for some reason)

# Changes
- pipeline-config setting will be empty by default
- remove fallback setting for config loading (simplifies config)

---
closes #133

---

* adjust config fetching mechanism

* default path empty

* remove fallback flag from ui and db
2021-09-17 21:40:43 +02:00
6543 d59fdb4602
[CI] Fix docs deploy & links (#301)
* set git commiter

* update links to docu

* fix image link
2021-09-11 18:48:52 +02:00
Matthias Fulz cf19b41ad4
Add flag for specific grpc server addr (#295)
Adding flag to server for setting up listen addr of grpc:

--grpc-addr / $WOODPECKER_GRPC_ADDR
2021-09-09 18:34:29 +02:00
Anbraten 1a67fc6e99
Use server-host as source for public links and warn if it is set to localhost (#251)
* Use server-host as source for public links

* use config and rm GetURL()

* fix: solve import cycle

Co-authored-by: 6543 <6543@obermui.de>
2021-08-20 16:32:52 +02:00
6543 70958acc44
update / remove drone dependencies (#236)
* include github.com/drone/signal

* update github.com/drone/envsubst

* move github.com/woodpecker-ci/expr to woodpecker org
2021-06-30 19:15:28 +02:00
6543 bfc4aa8059
Enforce code format (#228)
* format .drone.yml & go code

* improve .editorconfig

* extend Makefile

* enforce go code format

* fix space

* update deps

* clean up
2021-06-22 12:34:35 +02:00
techknowlogick 77e046b47f
Add OAuth2 Support for Gitea Remote (#226)
* add oauth support for Gitea

* go fmt

* cli flags
2021-06-17 09:02:44 +02:00
Marian Steinbach 16bdc9fe12
Move flag definitions into extra files (#215) 2021-05-31 14:35:47 +02:00
Marian Steinbach 3d083ec058
Remove unused code in server (#213) 2021-05-31 14:34:00 +02:00
Marian Steinbach 8f76192b77
Show all env var names in log messages (#208) 2021-05-31 13:28:24 +02:00
Alex Eftimie a3a361ad10
Update setup.go 2021-05-27 07:27:13 +02:00
Alex Eftimie 943a308afe Allow configuring the URL to user documentation 2021-05-27 06:58:30 +02:00
Laszlo Fogas c7ebd68232 Relaced laszlocph/woodpecker with woodpecker-ci/woodpecker 2021-05-25 14:08:27 +02:00
Laszlo Fogas 5ea7098569 Go 1.16, go fmt, go modules update 2021-02-19 09:43:03 +01:00
Jens 25e403e434 Add WOODPECKER_ vars to agent 2020-08-26 13:54:25 +00:00
Jens 6137045247 Add WOODPECKER_ variables 2020-08-26 13:40:26 +00:00
Jens Heinrich aaf80259d3
Update server.go
Reference both possible values to make debugging easier
2020-08-04 18:03:15 +02:00
Laszlo Fogas 6feae313ec
Merge pull request #120 from imduffy15/docker-config-secrets
Add global registry from docker config file on woodpecker server
2020-05-20 08:43:11 +02:00
Laszlo Fogas 14636cc226
Merge pull request #119 from imduffy15/owner-filter
Add whitelist for syncable owners
2020-05-20 06:53:24 +02:00
Ian de010dfb39 Add global registry from docker config file on woodpecker server 2020-05-19 13:44:16 +01:00
Laszlo Fogas 1444b06a7e
Merge pull request #118 from imduffy15/global-envs
Add support for a global env from a server flag
2020-05-19 14:26:33 +02:00
Laszlo Fogas a9ee3c2296
Merge pull request #116 from imduffy15/secure-grpc
Allow the agent to connect to a secure grpc endpoint
2020-05-19 13:53:07 +02:00
Ian 0d90789422 Add whitelist for syncable owners 2020-05-18 16:58:59 +01:00
Ian 070f6ea49c Add support for a global env from a server flag 2020-05-18 16:48:31 +01:00
Ian a11db91e49 Upgrade dependencies 2020-05-18 16:41:15 +01:00
Ian c26b722736 Allow the agent to connect to a secure grpc endpoint
Add flags to allow the agent to connect to a secure grpc endpoint.

This can be done by placing nginx in front of the drone-server or updating the
code to accept tls servers for the grpc server.
2020-05-18 15:49:38 +01:00
Laszlo Fogas 16765d939d Compile error 2019-11-12 21:49:38 +01:00
Laszlo Fogas 8dee34878d Version is now a string coming from ldlags and git tags 2019-11-12 21:10:16 +01:00
Laszlo Fogas 630c383181 Project is renamed to Woodpecker 2019-08-27 13:07:19 +02:00
Laszlo Fogas f0c641fa9d Exposing waiting job count as metric 2019-07-10 10:00:38 +02:00
Laszlo Fogas 1d564e978f More prometheus metrics, refactoring 2019-06-28 14:28:41 +02:00
Laszlo Fogas f25317599a Unlimited 2019-06-01 09:45:20 +02:00
Laszlo Fogas 16d68eddbf Was throwing: currval of sequence builds_build_id_seq is not yet defined in this session 2019-05-30 14:06:49 +02:00
Laszlo Fogas f65c4993c1 Fixes 2019-05-30 12:15:29 +02:00
Laszlo Fogas 5dc9f7dc83 Reimlemented metrics 2019-05-30 11:11:14 +02:00
Laszlo Fogas a4541ac901 Pull in cncd/* for simpler workflow 2019-04-06 15:44:04 +02:00
Laszlo Fogas ca5817ffc2 Renamed package 2019-04-04 20:51:20 +02:00
Brad Rydzewski 6a651f1e39 move vault params to extras 2018-05-01 21:05:30 -07:00
Matt Leung 187d1d65bb add additional opt to set v.auth 2018-04-27 14:50:47 -07:00
Matt Leung 79428aa231 Enable Vault auth through kubernetes auth method
Added a feature to obtain the initial Vault token from the Kubernetes
auth method.

This works by making a request to the Vault server at the specified auth
method mount point's login path and presenting the JWT located in a file
on a running pod, along with the Kubernetes role to authenticate as.

Vault will then respond with a token and its TTL, if the request is valid.
2018-04-24 14:56:28 -07:00
Brad Rydzewski 897eb95bcd
Merge pull request #2369 from JonasFranzDEV/master
Add context to Gitea status
2018-03-30 09:32:09 -07:00
Thomas Boerger 06ff6b50ed
Use specific token for prometheus metrics 2018-03-27 22:22:19 +02:00
Thomas Boerger 7f49e69607
Just fixed format with go fmt ./... 2018-03-21 14:02:17 +01:00
Jonas Franz 6a32935011
Add context to gitea status
Signed-off-by: Jonas Franz <info@jonasfranz.software>
2018-03-10 20:11:34 +01:00
Brad Rydzewski 580fe9abb7 add apache license header to files 2018-02-19 14:24:10 -08:00
Brad Rydzewski ce740a635e
Merge pull request #2295 from jmccann/keepalive_server
Allow setting MinTime for keepalive enforcement on server
2018-02-19 13:36:13 -08:00
Brad Rydzewski 909053ba5b
Merge pull request #2244 from appleboy/fix2
Fix drone filter func
2018-02-19 13:01:05 -08:00
Tony Li 9651a8043e
add usage for cpu-set 2018-02-13 10:41:36 -08:00
Tony Li 84954e2d20
fix verbage 2018-01-30 13:30:06 -05:00
Tony Li 0a6666b4bf
update server-agent usage 2018-01-30 13:28:17 -05:00
Tony Li 22522bfe44
update server usages 2018-01-30 13:28:07 -05:00
Tony Li 625ef44f55
make same 2018-01-29 19:21:46 -05:00
Tony Li 73914fdbd5
update server cli usage 2018-01-29 19:21:32 -05:00
Tony Li e1a695bd04
update agent cli usage 2018-01-29 19:00:14 -05:00
Jacob McCann 8295166ca4 Update usage for keepalive-min-time 2018-01-24 08:41:11 -06:00
jhernandezb 546e0bad00
Fix autocert generation 2018-01-18 10:33:41 -06:00
Brad Rydzewski 4db23fae05
Merge pull request #2301 from jhernandezb/feature/acme-http-01
migrate to http-01 challenge
2018-01-15 17:00:25 -08:00
jhernandezb 32e80eca20
lets encrypt: migrate to http-01 challenge 2018-01-12 22:54:49 -06:00
Jacob McCann 36f99c9a3f Add explicit default for DRONE_KEEPALIVE_TIMEOUT 2018-01-10 13:39:40 -06:00
Jacob McCann 6eb9af01c6 Allow setting MinTime for keepalive enforcement on server
This allows setting agent keepalive Time at value < 5m
2018-01-08 14:46:44 -06:00
Jacob McCann 164fd0ad3f Update keepalive config to use DurationFlag 2018-01-08 12:47:08 -06:00
Jacob McCann 06fa27d937 Add keepalive to agents 2018-01-08 09:28:38 -06:00
Jesse Lang b339532e0c Fix DRONE_HOST check 2017-12-20 06:49:02 -06:00
Jesse Lang 453f415cc4 Validate DRONE_HOST to ensure it contains a scheme and not a trailing slash 2017-12-19 20:08:55 -06:00
Mark Spicer 8476c90bbf Set the redirect handler for lets encrypt.
This commit sets the http handler to the redirect function for let's encrypt
enabled drone instances. In addition, the `Strict-Transport-Security` header is
added to the redirect given `header.Secure` will only be added for gin routes.

This commit resolves #2261.
2017-11-15 23:27:57 -05:00
Mark Spicer 238e916fa0 Redirect HTTP to HTTPS when SSL is enabled.
In our current drone setup, we are not using a proxy, thus letting drone handle
SSL termination. In addition, we are not exposing port 80 (effectively disabling
insecure drone access). When new engineers join and attempt to access drone,
they are not sent a 301 and often complain that they either do not have access
or that drone is broken (when in reality they are just accessing drone via the
incorrect protocol/port).

This commit changes the default behavior when running drone with a server-cert
by only sending redirects on port 80 rather than allowing both secure and
insecure access.
2017-11-15 21:36:02 -05:00
Bo-Yi Wu 7c1b1c6d95 fix wrong filter variable.
Signed-off-by: Bo-Yi Wu <appleboy.tw@gmail.com>
2017-10-17 16:52:35 +08:00
Brad Rydzewski ec6016062b show loading status in user interface 2017-09-20 12:29:57 -07:00
Brad Rydzewski ae51e9d1b9 force downgrade to http/1.1 because safari 2017-09-19 15:30:31 -07:00
Brad Rydzewski 8c7d48ebed graceful shutdown on SIGTERM 2017-09-14 18:42:00 -07:00
Brad Rydzewski 2f2144c4bd Merge remote-tracking branch 'origin/master' 2017-09-14 09:40:12 -07:00
Brad Rydzewski 63001a7c66 expose agent name to pipeline 2017-09-14 09:39:52 -07:00
Brad Rydzewski bf454572f2 Merge pull request #2215 from bradrydzewski/master
add gitlab v3 option for backward compat
2017-09-14 07:57:53 -07:00
Brad Rydzewski 913d8701f2 add gitlab v3 option for backward compat 2017-09-14 07:50:07 -07:00
Matt Leung 820d07263b Add server env var to specify .drone.yml location
Allow setting DRONE_REPO_CONFIG to override default location of .drone.yml
2017-09-12 17:06:12 -07:00
Brad Rydzewski 42b60bd822 more advanced health check logic 2017-09-12 13:40:24 -07:00
Brad Rydzewski eca91f4ec7 provide a basic agent healthcheck 2017-09-12 11:25:55 -07:00
Brad Rydzewski 8795cf039f reduce logfile upload limit 2017-09-12 09:03:32 -07:00
Brad Rydzewski 25c9b8050a introduce limiter for planned refactoring 2017-09-11 10:22:45 -07:00
Matt Leung b79dae403e Let agent pass filter expression string for builds
Drone agent accepts DRONE_FILTER env var
2017-09-08 14:27:27 -07:00
Brad Rydzewski e11dd116a2 Merge pull request #2155 from frebib/fix-repo-user
Fix extractRepositoryName() in agent logs
2017-08-23 15:44:10 -07:00
Joachim Hill-Grannec c30198e412 Adding Environment variable to configure the session expiration 2017-08-17 12:50:31 -07:00
Joe Groocock fbb9526a39
Fix extractRepositoryName() in agent logs 2017-08-10 15:55:58 +01:00
Brad Rydzewski 9a5c2d5481 structured agent logging 2017-08-03 15:36:22 -04:00
Brad Rydzewski 60cd607450 capture file metadata 2017-08-02 16:04:00 -04:00
Brad Rydzewski 241d994a26 abstract the user interface 2017-07-31 15:15:05 -04:00
Brad Rydzewski 99b10537ba enable redirect for http to https when certs provided 2017-07-26 10:44:38 -04:00
Brad Rydzewski 5e735c2632 improve experimental quic setup 2017-07-24 21:46:00 -04:00
Brad Rydzewski 2c8dbef79f implement quic server 2017-07-24 19:15:25 -04:00
Brad Rydzewski 07c82aa1c6 Merge remote-tracking branch 'origin' 2017-07-24 13:23:47 -04:00
Brad Rydzewski 39251a85a9 removed unused and broken packages 2017-07-24 13:23:22 -04:00
mingshun eb94dc0419 Added integration for coding.net 2017-07-22 17:12:09 +08:00
Brad Rydzewski eaa6d41699 pass agent hostname to all rpc calls 2017-07-20 12:21:15 -04:00
Brad Rydzewski 250b048b22 pass agent hostname to server and persist 2017-07-19 17:46:03 -04:00
Brad Rydzewski 35e0ee2e5f implement sync logic 2017-07-14 15:58:38 -04:00
Brad Rydzewski f7066473c1 require DRONE_HOST on startup 2017-07-12 14:48:56 -04:00
Brad Rydzewski a625f06c1a enable grpc auth 2017-06-29 19:35:38 -04:00
Brad Rydzewski 1a6920e822 separate agent and server binary 2017-06-29 18:51:22 -04:00
Brad Rydzewski 155576fb03 moved to single binary project structure 2015-09-29 17:53:21 -07:00
Dan Williams 0407297229 Make exiting edit back to repo view more efficent 2015-09-28 16:54:51 -04:00
Brad Rydzewski 8535ea44fd generate token via the UI 2015-09-09 14:34:28 -07:00
Brad Rydzewski cdfec98cf4 cleaned up the token implementation for #1175 2015-09-09 14:05:52 -07:00
Brad Rydzewski af82f7aa2c removed old, unused config package 2015-09-08 18:55:03 -07:00
Brad Rydzewski 2fcfd8100a re-enable SSL 2015-09-08 14:19:39 -07:00
Brad Rydzewski c53e7173aa purging agent code from 0.4 ... out of scope for 0.4 release 2015-09-08 14:14:03 -07:00
Brad Rydzewski 008a16f7e7 removed drone-build to its owner repository, drone/drone-exec 2015-09-08 14:02:48 -07:00
Brad Rydzewski 5feac33f85 put yaml unmarshal after find/replace 2015-09-07 19:24:14 -07:00
Brad Rydzewski 5f802056e0 ability to encrypt the .drone.sec file 2015-09-07 15:33:55 -07:00
Brad Rydzewski 08b73384ac fix links to secrets 2015-09-07 12:32:30 -07:00
Brad Rydzewski b65d1cda97 support for .drone.sec file 2015-09-07 12:13:27 -07:00
Brad Rydzewski dbf0fa6ee0 consistent use of the _url in REST API 2015-09-03 17:21:08 -07:00
Brad Rydzewski b1150ce6fb Merge remote-tracking branch 'upstream/0.4.0' into 0.4.0 2015-09-02 16:14:58 -07:00
Brad Rydzewski 98a6c14331 prepping for new drone-exec build agent 2015-09-02 16:14:25 -07:00
Kirilll Zaitsev 654dd31cbd Move gitlab routes to gitlab group 2015-09-02 05:19:11 +03:00
Kirilll Zaitsev 6854d1343e Additional fixes 2015-08-30 01:18:45 +03:00
Kirill Zaitsev fd98e26575 GitLab service interface 2015-08-30 00:33:41 +03:00
Thomas Boerger 2577b6cda2 Integrated logout button into the UI 2015-08-27 09:48:57 +02:00
Chengwei Yang ceacbdd4fe Fix default docker host configuration
Signed-off-by: Chengwei Yang <yangchengwei@qiyi.com>
2015-08-26 16:49:08 +08:00
Brad Rydzewski b264e837fe build runner now in charge of timeout 2015-08-21 15:30:32 -07:00
Brad Rydzewski bf1b9d2d8a use exit status 130 when canceling a build 2015-08-21 00:06:10 -07:00
Brad Rydzewski 50d3ea8e00 trap SIGINT and cleanup containers 2015-08-20 18:31:54 -07:00
Brad Rydzewski 943fafb67e hide UI things when user not authenticated 2015-08-20 17:43:44 -07:00
Brad Rydzewski 1b8a00f5f6 always check for new plugins, until we have an update strategy 2015-08-20 15:54:23 -07:00
Brad Rydzewski e31b53f688 temporarily disable caching for public repos until we understand more 2015-08-19 15:54:29 -07:00
Brad Rydzewski 0c4c5d81a9 disable cache for public repo pull requests (for now) 2015-08-19 15:49:27 -07:00
Brad Rydzewski b3f4cfccda setup error when workspace path not exists 2015-08-19 12:39:16 -07:00
Brad Rydzewski 164c0c6a8e move clone path calc due to panic 2015-08-19 12:38:08 -07:00
Brad Rydzewski aeee201796 Merge pull request #1149 from donny-dont/features/git-checkout-specified
Adding support for setting the workspace directly in the config
2015-08-19 10:38:24 -07:00
Brad Rydzewski 06ef899c26 initial implementation and endpoint for #1145 2015-08-18 23:59:30 -07:00
Don Olmstead b7635ec844 Fixing build and formatting issues 2015-08-18 18:29:01 -07:00
Don Olmstead 6b0f24cc11 Adding support for setting the workspace directly in the config 2015-08-18 17:34:04 -07:00
Brad Rydzewski 1cc2e3d4d6 add feed endpoint for wall 2015-08-18 16:09:27 -07:00
Brad Rydzewski 046f71ac06 Merge pull request #1142 from donny-dont/features/add-caching
Adding caching
2015-08-18 10:17:23 -07:00
Don Olmstead d27788e4b4 Adding caching into the build. Fixing style issues 2015-08-17 16:25:08 -07:00
Brad Rydzewski f191d130a3 some style for the restart button 2015-08-13 08:44:06 -07:00
Brad Rydzewski f6078a4b71 fixed many minor UI bugs 2015-08-12 23:56:05 -07:00
Brad Rydzewski d34cd6e5e9 ability to package 0.4 (.deb only at the moment) 2015-08-11 23:57:12 -07:00
Brad Rydzewski 25c905c7ed fixed issue w/ double-loading controllers 2015-08-10 22:33:51 -07:00
Brad Rydzewski c62ca29469 format jobs and include exist code, duration, etc 2015-08-10 22:17:58 -07:00
Brad Rydzewski 194f7dd6ca make status icons 32px for consistency 2015-08-10 00:58:48 -07:00
Brad Rydzewski daa29edbc6 added overall build status to header 2015-08-10 00:29:04 -07:00
Brad Rydzewski c1d18b65bb mark active job in list 2015-08-09 20:52:08 -07:00