• Stars
    star
    121
  • Rank 293,924 (Top 6 %)
  • Language
    Shell
  • License
    MIT License
  • Created about 8 years ago
  • Updated 11 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Gitlab CI runner image that pushes to a remote Git repo (Dokku, Heroku, Deis, etc.)

GitLab CI runner that pushes to git

This GitLab CI runner image allows to deploy a GitLab project to a remote Git repo (useful for Dokku, Heroku, Deis, etc.)

How to use

Create .gitlab-ci.yml:

image: ilyasemenov/gitlab-ci-git-push

variables:
  # Prevent "shallow update not allowed" error.
  # Set it to maximum possible count of *new* commits that you foresee being pushed to a remote.
  GIT_DEPTH: 1000

stages:
  - deploy

deploy to production:
  stage: deploy
  environment: production
  only:
    - master
  script: git-push [email protected]:myapp

Go to GitLab > Project > Settings > CI/CD > Secret Variables, and add a variable SSH_PRIVATE_KEY:

-----BEGIN RSA PRIVATE KEY-----
...
-----END RSA PRIVATE KEY-----

Make sure your private ssh key is not encrypted, or Gitlab won't be able to authenticate to your SSH server. You'll know if it is encrypted if you open it up and the top has something like:

-----BEGIN RSA PRIVATE KEY-----
Proc-Type: 4,ENCRYPTED

If it is, you can decrypt it by running: openssl rsa -in enc.key -out dec.key

Pushing to a branch other than master

By default, git-push will push to branch master of a remote repository (that's what Dokku wants). You can override this with:

git-push [email protected]:repo branch

Pushing to Git running on a non-standard port

git-push ssh://[email protected]:8022/myapp

Not doing force push

By default, git push will be forced. You can disable force push by setting environment variable DISABLE_FORCE_PUSH to any value.

More Repositories

1

wikipedia-word-frequency

Gather modern English word frequencies from all enwiki articles.
Python
190
star
2

nuxt-vite-legacy

Nuxt.js legacy build
TypeScript
37
star
3

grammy-scenes

Nested named scenes for grammY
TypeScript
25
star
4

nuxt-update

Nuxt module: detect app update and ask to reload page
TypeScript
24
star
5

vue-valibot

Vue3 composables for handling form submit with optional valibot integration
TypeScript
22
star
6

nuxt3-class-component

Nuxt3 replacement for nuxt-property-decorator
TypeScript
20
star
7

graphql-orm

Resolve GraphQL query with Objection.js or Orchid ORM
TypeScript
15
star
8

nfs-provisioner-chart

Helm chart for NFS provisioner
Shell
13
star
9

aiohttp_route_decorator

aiohttp @route decorator that doesn't need the app singleton
Python
13
star
10

dokku-static-site

Deploy static sites to Dokku with Dockerfile (without buildback)
Nginx
10
star
11

dokku-gitlab

Run GitLab as a Dokku app
Python
9
star
12

django-sequential-pagination

Fast sequential objects pagination for Django
Python
7
star
13

django-templates-admin

Edit project template files from the Django admin UI
Python
7
star
14

django-modelsettings

Django application that allows to create user-adjustable application settings which are stored in database models
Python
7
star
15

node-data-cleaner

Django-forms-inspired object data cleaner and validator for Node.js
TypeScript
6
star
16

python-edost

Python bindings for edost.ru
Python
5
star
17

tsconfig-vite-node

A base TSConfig for Node apps developed with vite-node and/or built with vite.
JavaScript
5
star
18

valibotx

Extensions for valibot 🤖
TypeScript
5
star
19

django-minimal-abstract-user

Django AbstractUser without username, first_name, last_name, email but with is_staff and PermissionsMixin
Python
5
star
20

node-unpickle

Unpickle Python data in Node.js
JavaScript
4
star
21

nuxt-stash

Lightweight alternative to Vuex store for Nuxt.js
JavaScript
4
star
22

graphql-define-resolvers

Define typed GraphQL query/mutation resolvers.
TypeScript
4
star
23

intl-formats

Simplified Intl.DateTimeFormat formatters.
TypeScript
4
star
24

aiohttp_session_flash

Session flash messages for aiohttp.web
Python
4
star
25

dokku-redmine

Run Redmine as a Dokku app
Python
3
star
26

vue-remove-scope-directive

Vue directive to prevent style scope leak
JavaScript
3
star
27

orchid-graphql

orchid-orm plugin: resolve GraphQL query with Orchid ORM
3
star
28

objection-reorder

objection.js plugin: reorder objects (set object position)
TypeScript
2
star
29

django-object-utils

Update Django model objects without race conditions
Python
2
star
30

django-everlasting-sessions

Django middleware that prevents user sessions from expiration.
Python
2
star
31

django-multiforeignkey

Django ForeignKey that links to one of several specified models
Python
2
star
32

vue-observable-persist

Automatically persist a Vue observable object in localStorage
JavaScript
2
star
33

wiki

My workflow wikis
2
star
34

django-uuid-upload

Store Django uploaded files as UUID files or inside UUID directories
Python
2
star
35

dayjs-isodate

dayjs ISO date plugin
JavaScript
1
star
36

dokku-dokuwiki

Run DokuWiki as a Dokku app
PHP
1
star
37

dokku-refuse-unknown-domains

Dokku app that refuses requests to unknown domains
1
star
38

ilyasemenov.github.io

HTML
1
star
39

django-delayed-storage

Django storage wrapper that completes file operations in database commit hook
Python
1
star
40

ream-typescript

Typescript support for Ream.js
JavaScript
1
star
41

fork-ts-checker-webpack-plugin-pnpm-reproduction

Reproduction repo for fork-ts-checker-webpack-plugin not playing well with pnpm project
JavaScript
1
star
42

vscode-python-relative-import-repro

Reproduction for Python vscode relative imports not working
Python
1
star
43

gitlab-runner-helper-git-crypt

Fork of gitlab-runner-helper with git-crypt
Dockerfile
1
star
44

node-data-cleaner-koa

Koa.js plugin for node-data-cleaner
TypeScript
1
star
45

eslint-plugin-simple-import-sort-typescript-repro

Reproduction repo for eslint-plugin-simple-import-sort typescript parsing
JavaScript
1
star
46

grammy-pseudo-update

grammY plugin: pseudo (manually generated) updates
TypeScript
1
star
47

nuxt-css-invalid-filename-reproduction

Reproduction repo
Vue
1
star
48

vue-cli-tree-shaking-reproduction

Reproduction repo for vue-cli tree shaking
Vue
1
star
49

dokku-solr

solr plugin for dokku
Shell
1
star
50

docker-git-crypt-kubectl

docker:git with git-crypt and kubectl
Dockerfile
1
star
51

nuxt-reproduction-6474

Reproduction repo for https://github.com/nuxt/nuxt.js/issues/6474
TypeScript
1
star
52

ts-node-dev-reload-breaks-reproduction

Reproduction repo for https://github.com/whitecolor/ts-node-dev/issues/37
TypeScript
1
star
53

koa-mount-final

koa-mount wrapper which prevents matched (but unhandled) requests from falling down the middleware stack
TypeScript
1
star
54

npm-package-starter

My personal starter for npm packages
JavaScript
1
star
55

django-abstract-utils

Django utils to operate on abstract model classes.
Python
1
star
56

nuxt-isomorphic-fetch

Isomorphic access to server-side API in Nuxt.js asyncData
JavaScript
1
star