Coder Social home page Coder Social logo

oas-ci's Introduction

oas-ci

Requiere Vagrant reciente. Si esto no es una opción para usted pase directamente a la sección Paso a producción (o instalación sin hipervisor).

Para pruebas locales debe tener instalado Git, Docker y Drone CLI. La instalación de estos no se cubre en este documento.

¿Cómo utilizar esto?

Simplemente ejecute el comando apropiado:

Para usar libvirt como proveedor utilice: (Necesita 2GB de RAM libres y 1 vCPUS)

vagrant plugin install vagrant-libvirt
vagrant up --provider libvirt && vagrant provision && vagrant reload

Para usar VirtualBox como proveedor, instale VirtualBox y utilice: (Necesita 4GB de RAM libres y 2 vCPUS)

vagrant up --provider virtualbox && vagrant provision && vagrant reload

Este proceso tarda aproximadamente 3 minutos y 50 segundos.

Para ver los últimos logs de los servicios iniciados ejecute:

vagrant ssh -c "bash" < scripts/logs

Las URL's por defecto son:

¿Cómo configurar esto?

Espere un momento, el primer inicio puede tomar tiempo, ya que se están descargando todas las imágenes de Internet. Siga mirando los logs.

Esto significa que ci-swarm-manage está listo:

/usr/bin/docker-current start --attach=true ci-swarm-manage

Esto significa que gogs está listo:

/usr/bin/docker-current start --attach=true gogs

Esto significa que drone está listo

/usr/bin/docker-current start --attach=true drone

Esto significa que registry está listo

/usr/bin/docker-current start --attach=true registry

Esto significa que registry-frontend está listo

/usr/bin/docker-current start --attach=true registry-frontend

Luego visite la URL de Gogs en su navegador. Realice la instalación de Gogs, teniendo en cuenta que el puerto de escucha de SSH es 10022 y la dirección o nombre del host.

pantallazo de instalación de gogs

Visite luego la URL de Drone, (las credenciales a utilizar son las mismas de Gogs), luego conecte cualquier repositorio que haya creado en Gogs para comenzar a hacer integración contínua.

Lea la documentación de Drone.

Solución de problemas

Si el proveedor es VirtualBox se tratarán de ubicar 4GB de RAM para la máquina virtual. Si esto representa un problema para tu setup ejecuta lo siguiente antes del comando vagrant up:

export OAS_CI_VBOX_MEMORY=XXXX

Dónde XXXX es la cantidad de memoria que se ubicará para la máquina virtual (en MBs).

Si el proveedor es libvirt se tratarán de ubicar 2GB de RAM para la máquina virtual. Si esto representa un problema para tu setup ejecuta lo siguiente antes del comando vagrant up:

export OAS_CI_LIBVIRT_MEMORY=XXXX

Dónde XXXX es la cantidad de memoria que se ubicará para la máquina virtual (en MBs).

Si utiliza un proxy web, estas direcciones deben estar en la lista de exlusión:

10.0.2.15
172.17.0.1
192.168.12.212

Si hay problemas de descarga (por ejemplo por estar destrás de un proxy) asegurar que los archivos necesarios fueron cambiados, es decir que las variables fueron pasadas del OS host al OS guest.

Los archivos cambiados para este propósito son:

/etc/environment
/etc/sysconfig/docker

Estos archivos son cambiados automáticamente tomando las variables del entorno actual con los siguientes comandos.

vagrant provision # para hacer el aprovisionamiento de dichos archivos, por ejemplo al cambiar de un ambiente con proxy a uno sin proxy
vagrant reload    # para asegurar que todos los servicios leen dichos archivos con los nuevos valores

Paso a producción (o instalación sin hipervisor)

El paso a producción o la instalación sin hipervisor no es totalmente automático (pero se acerca bastánte) y requiere algunas habilidades de SysAdmin.

Se han probado los paquetes en un servidor CentOS/7.

Lea el archivo scripts/installer para replicar el procedimiento en servidores reales.

Lea las documentaciones en:

Para conocer más detalles internos.

¿Bugs?

Si encuentra un bug, cree un "issue" en este proyecto. La falta o errores de documentación también se considera un bug.

oas-ci's People

Contributors

andresvia avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.