Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/ruanbekker/drone-gitea-on-docker
DroneCI and Gitea on Docker
https://github.com/ruanbekker/drone-gitea-on-docker
docker drone drone-ci gitea
Last synced: 3 days ago
JSON representation
DroneCI and Gitea on Docker
- Host: GitHub
- URL: https://github.com/ruanbekker/drone-gitea-on-docker
- Owner: ruanbekker
- License: mit
- Created: 2021-03-09T05:48:03.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2021-03-09T06:06:23.000Z (over 3 years ago)
- Last Synced: 2024-02-13T21:57:07.866Z (9 months ago)
- Topics: docker, drone, drone-ci, gitea
- Language: Shell
- Homepage: https://ruan.dev
- Size: 11.7 KB
- Stars: 46
- Watchers: 5
- Forks: 20
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# drone-gitea-on-docker
DroneCI and Gitea on Docker## Usage
Set the following in your `boot.sh`:
```
IP_ADDRESS=192.168.0.6 -> either reachable dns or ip address which will be your clone address and ui addresses.
GITEA_ADMIN_USER="giteauser" -> will be the user you register with in drone
```Now boot the stack:
```
$ bash boot.sh
```*Note*: Theres a [current issue](https://github.com/go-gitea/gitea/issues/7702) where webhooks get fired twice, if you see that just restart gitea with `docker restart gitea`.
- Head over to: `http://${IP_ADDRESS}:3000/user/settings/applications` and create a new OAuth2 Application and set the Redirect URI to `http://${IP_ADDRESS}:3001/login`
- Capture the client id and client secret and populate them in the `boot.sh` in `DRONE_GITEA_CLIENT_ID` and `DRONE_GITEA_CLIENT_SECRET` and run `bash boot.sh` again. This will give drone the correct credentials in order to authenticate with gitea.
- Now when you head over to `http://${IP_ADDRESS}:3001/` you will be asked to authorize the application and you should be able to access drone.
## Drone CLI
Install Drone CLI:
- https://docs.drone.io/cli/install/```
$ curl -L https://github.com/drone/drone-cli/releases/latest/download/drone_darwin_amd64.tar.gz | tar zx
$ sudo mv drone /usr/local/bin/drone
$ chmod +x /usr/local/bin/drone
```Get your Drone Token:
- http://${IP_ADDRESS}:3001/account```
$ export DRONE_SERVER=http://${IP_ADDRESS}:3001
$ export DRONE_TOKEN=one-from-the-account-page
drone info
```## Build your first pipeline
Create a test repo in gitea:
![image](https://user-images.githubusercontent.com/567298/110296470-0ad23800-7ffb-11eb-8428-af49d0ebd62d.png)
Commit a `.drone.yml` file for drone:
```
$ cat .drone.yml
kind: pipeline
type: docker
name: hello-worldtrigger:
branch:
- master
event:
- pushsteps:
- name: say-hello
image: busybox
commands:
- echo hello-world
```Head over to drone and sync your repositories:
![image](https://user-images.githubusercontent.com/567298/110296425-00b03980-7ffb-11eb-9216-76725a62c09e.png)
Activate your repository:
![image](https://user-images.githubusercontent.com/567298/110296623-3523f580-7ffb-11eb-805f-db5db4dab0cb.png)
Push a commit to master and see your pipeline running:
![image](https://user-images.githubusercontent.com/567298/110296747-584ea500-7ffb-11eb-9909-259641a663aa.png)
## More Examples
- https://github.com/ruanbekker/drone-ci-testing
- https://github.com/ruanbekker/drone-demo-python-flask
- https://github.com/ruanbekker/drone-with-go
- https://github.com/ruanbekker/demo-drone-mongodb-tests
- https://github.com/ruanbekker/drone-multi-pipeline
- https://github.com/ruanbekker/docker-jekyll-drone
- [Localstack with Drone and Gitea](https://gist.github.com/ruanbekker/84cb9f0c2a21434ca8381a0c74842d84)
- [Drone, Minio, Gitea, Sqlite on Docker Compose](https://gist.github.com/ruanbekker/3847bbf1b961efc568b93ccbf5c6f9f6)