Ir al contenido

Cuentas y proyectos

Algunas funcionalidades de Tuist requieren un servidor que añade persistencia de datos y puede interactuar con otros servicios. Para interactuar con el servidor, necesitas una cuenta y un proyecto que conectes a tu proyecto local.

Cuentas#

Para usar el servidor, necesitarás una cuenta. Hay dos tipos de cuentas:

  • Cuenta personal: Estas cuentas se crean automáticamente cuando te registras y se identifican mediante un handle que se obtiene del proveedor de identidad (por ejemplo, GitHub) o de la primera parte de la dirección de correo electrónico.
  • Cuenta de organización: Estas cuentas se crean manualmente y se identifican mediante un handle definido por el desarrollador. Las organizaciones permiten invitar a otros miembros a colaborar en proyectos.

Si estás familiarizado con GitHub, el concepto es similar al suyo, donde puedes tener cuentas personales y de organización, y se identifican mediante un handle que se usa al construir URLs.

Prioridad a la CLI

La mayoría de las operaciones para gestionar cuentas y proyectos se realizan a través de la CLI. Estamos trabajando en una interfaz web que facilitará la gestión de cuentas y proyectos.

Puedes gestionar la organización a través de los subcomandos bajo tuist organization. Para crear una nueva cuenta de organización, ejecuta:

bash
tuist organization create {account-handle}

Membresía de la organización#

Los usuarios pueden convertirse en miembros de la organización mediante una invitación, inscripción automática de inicio de sesión único (SSO) o aprovisionamiento mediante el System for Cross-domain Identity Management.

Autenticarse con el proveedor de identidad de una organización no concede la membresía por sí solo. La política de inscripción de inicio de sesión único (SSO) de la organización determina si un usuario de su dominio de confianza necesita una invitación o puede unirse automáticamente.

Los administradores pueden invitar a un miembro desde el panel de control o con tuist organization invite. Pasa --role admin o --role viewer para asignar al invitado un rol distinto de user cuando acepte.

Roles#

Cada miembro de la organización tiene uno de tres roles:

RolQué otorga
AdministradorTodo lo que puede hacer un usuario, más la gestión de la organización: miembros e invitaciones, proyectos, facturación, tokens, webhooks y configuración.
UsuarioLee y actúa sobre el trabajo de la organización: ejecutar compilaciones y tests, escribir en la caché, crear y eliminar previews, y cambiar el estado de un caso de test.
VisualizadorLee el trabajo de la organización y no cambia nada. Los paneles de control, las compilaciones, las ejecuciones de tests, los tests inestables y en cuarentena, las previews, los bundles y la actividad de los runners son legibles. Adjuntar una shell interactiva o una sesión VNC a un runner no lo es, porque ejecuta comandos en la máquina.

Elige un rol cuando invites a alguien y cámbialo más tarde desde Miembros en el panel de control. Un rol establecido de esta manera nunca se sobrescribe por un inicio de sesión posterior.

Proyectos#

Tus proyectos deben integrarse con tu cuenta a través de un proyecto remoto. Siguiendo con la comparación con GitHub, es como tener un repositorio local y otro remoto donde envías tus cambios. Puedes usar tuist project para crear y gestionar proyectos.

Los proyectos se identifican mediante un handle completo, que es el resultado de concatenar el handle de la organización y el handle del proyecto. Por ejemplo, si tienes una organización con el handle tuist y un proyecto con el handle tuist, el handle completo sería tuist/tuist.

La vinculación entre el proyecto local y el remoto se realiza a través del archivo de configuración. Si no tienes ninguno, créalo en Tuist.swift y añade el siguiente contenido:

swift
let tuist = Tuist(fullHandle: "{account-handle}/{project-handle}") // e.g. tuist/tuist
Funcionalidades exclusivas de proyectos de Tuist

Ten en cuenta que algunas funcionalidades, como la caché de módulos, requieren un proyecto gestionado por Tuist. Si no usas Tuist para gestionar tu proyecto, no podrás usar esas funcionalidades.

La URL de tu proyecto se construye usando el handle completo. Por ejemplo, el panel de control de Tuist, que es público, es accesible en tuist.dev/tuist/tuist, donde tuist/tuist es el handle completo del proyecto.