{"id":24391986,"url":"https://github.com/angelmadames/oasis","last_synced_at":"2026-04-29T03:34:19.077Z","repository":{"id":232104622,"uuid":"783482542","full_name":"angelmadames/oasis","owner":"angelmadames","description":"Onboarding/Offboarding Automation System. A CLI tool to run routinary tasks related to user management in common platforms and services in Software Development. ","archived":false,"fork":false,"pushed_at":"2024-09-08T08:41:00.000Z","size":29,"stargazers_count":0,"open_issues_count":4,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-09-08T09:49:54.528Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/angelmadames.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-04-08T01:26:44.000Z","updated_at":"2024-04-08T01:41:19.000Z","dependencies_parsed_at":null,"dependency_job_id":"a8ab459e-3b29-4256-980f-641830ca0b67","html_url":"https://github.com/angelmadames/oasis","commit_stats":null,"previous_names":["angelmadames/oasis"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/angelmadames%2Foasis","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/angelmadames%2Foasis/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/angelmadames%2Foasis/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/angelmadames%2Foasis/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/angelmadames","download_url":"https://codeload.github.com/angelmadames/oasis/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243318758,"owners_count":20272144,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-01-19T18:00:37.610Z","updated_at":"2025-12-30T04:24:31.765Z","avatar_url":"https://github.com/angelmadames.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003c!-- omit in toc --\u003e\n# Oasis  ― User Onboarding \u0026 Offboarding Automation System\n\n[![🧪 Tests](https://github.com/angelmadames/oasis/actions/workflows/tests.yml/badge.svg)](https://github.com/angelmadames/oasis/actions/workflows/tests.yml)\n\n\u003c!-- omit in toc --\u003e\n## Content\n\n- [Overview](#overview)\n- [Motivation](#motivation)\n- [Platforms](#platforms)\n  - [Onboarding](#onboarding)\n  - [Offboarding](#offboarding)\n- [Configuration](#configuration)\n- [Commands](#commands)\n  - [offboard](#offboard)\n  - [onboard](#onboard)\n\n## Overview\n\nOasis is a CLI tool that runs otasks related to user management\n(onboaring/offboarding) in common platforms and services in Software Development.\n\nIt's made with [Bun], [Commander.js] and [TypeScript].\n\n## Motivation\n\nAt [gbh.tech], the onboarding and offboarding processes require a lot of tasks\nand involve multiple areas/departments for them to be completed successfully.\nThis has led to missed tasks along the way, and only after internal audits\nor platform maintenance we notice users that haven't been fully processed.\n\nWith the Oasis CLI, we automated a small part of the process: access control.\nWe ensure users are invited/added to the platform, or removed/deactivated\naccording to the process being carried out.\n\nAt the moment, the Oasis CLI can only be triggered from a local environment,\nbut we hope to extend it in the future to a more accessible format.\n\n## Platforms\n\n### Onboarding\n\nFor Onboarding, the list of supported platforms at the moment is:\n\n- [Jira]\n\n### Offboarding\n\n- [Jira]\n- [Clockify]\n- [GitHub]\n- [1Password]: Uses the CLI, so `op` must be available in your system.\n\n## Configuration\n\nTo configure the application access that allows Oasis to offboard or onboard\nusers, we'll be depending on the `.env` file.\n\nCheck the `.env.example` for insights on which values are needed for each\nplatform. It serves as an starting point to add all the required API keys,\ntokens, and URLs.\n\n## Commands\n\n### offboard\n\nAs its name indicates, initializes the offboarding of an user in the specified\nplatform. Offboarding might translate to removal of membership, deactivation of\nuser, or complete deletion, depending on the context.\n\n\u003e Oasis is not expected to _clearly_ specify the difference by platform, so it\n\u003e is up to the operator to review and understand what's happening under the\n\u003e hood.\n\nExamples:\n\n```shell\n# ./cli onboard jira --user $USER_EMAIL\n./cli offboard jira --user devops@gbh.tech\n\n# ./cli onboard clockify --user $USER_EMAIL\n./cli offboard clockify --user devops@gbh.tech\n\n# ./cli onboard github --username $GITHUB_USERNAME\n./cli offboard github --username devops-gbh-bot\n```\n\n### onboard\n\nThe onboarding command invites users to the specified platform.\n\nExample:\n\n```shell\n# ./cli onboard jira --user $USER_EMAIL\n./cli onboard jira --user devops@gbh.tech\n```\n\n\u003c!-- References --\u003e\n[gbh.tech]: https://gbh.tech\n[Bun]: https://bun.sh\n[Commander.js]: https://github.com/tj/commander.js\n[TypeScript]: https://www.typescriptlang.org\n[Jira]: https://www.atlassian.com/software/jira\n[Clockify]: https://clockify.me\n[GitHub]: https://github.com\n[1Password]: https://developer.1password.com\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fangelmadames%2Foasis","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fangelmadames%2Foasis","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fangelmadames%2Foasis/lists"}