{"id":13561450,"url":"https://github.com/vmware-archive/claportal","last_synced_at":"2025-04-03T17:30:55.846Z","repository":{"id":66819623,"uuid":"59855391","full_name":"vmware-archive/claportal","owner":"vmware-archive","description":"Contributor License Agreement (CLA) Portal","archived":true,"fork":false,"pushed_at":"2021-07-01T14:23:20.000Z","size":201,"stargazers_count":9,"open_issues_count":1,"forks_count":3,"subscribers_count":4,"default_branch":"master","last_synced_at":"2024-12-19T00:03:42.703Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/vmware-archive.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","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}},"created_at":"2016-05-27T18:31:55.000Z","updated_at":"2023-12-23T19:42:43.000Z","dependencies_parsed_at":null,"dependency_job_id":"91c37926-1d71-463f-9dfd-7eb37dbcef62","html_url":"https://github.com/vmware-archive/claportal","commit_stats":null,"previous_names":["vmware/claportal"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vmware-archive%2Fclaportal","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vmware-archive%2Fclaportal/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vmware-archive%2Fclaportal/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vmware-archive%2Fclaportal/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/vmware-archive","download_url":"https://codeload.github.com/vmware-archive/claportal/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247046814,"owners_count":20874728,"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":"2024-08-01T13:00:56.784Z","updated_at":"2025-04-03T17:30:50.837Z","avatar_url":"https://github.com/vmware-archive.png","language":"Java","funding_links":[],"categories":["Contributor License Agreements / Developer Certificate of Origins"],"sub_categories":[],"readme":"# VMware has ended active development of this project, this repository will no longer be updated.\n# CLA Portal\n\nThis tool enables a workflow for developers to digitally sign a contributor license agreement (CLA) for your projects on GitHub. When a developer opens a pull request, they will get prompted to sign the agreement if they have not already. An administrator interface is provided for CLA authoring, CLA-to-project mapping, and agreement reviews.\n\nThe portal also supports developer certificate of origin (DCO). When enabled on a repository, all commits within a pull request will be checked for a signature in the following format: `Signed-off-by: John Doe \u003cjohn.doe@example.com\u003e` that matches the commit author.\n\nFor more general information on CLAs, refer to our [FAQ](https://cla.vmware.com/faq)\n\n## Try it out\n\n### Prerequisites\n\n* Java 8\n* Lightbend Activator\n* Docker\n* ngrok\n\n### Build \u0026 Run\n\n1. Start ngrok to tunnel webhook requests from GitHub\n\n    `ngrok http 9000`\n\n2. Register an OAuth application on GitHub\n3. Create an OAuth access token on GitHub with the following scope\n\n    `repo admin:repo_hook read:org`\n\n4. Update settings in conf/application.conf\n\n    ```\n    smtp.host=\"smtp.test.com\"\n\n    app.host=\"https://\u003csubdomain\u003e.ngrok.io\"\n    app.internal.host=\"http://localhost:9000\"\n    app.github.clientid=\"\u003cGitHub OAuth client ID\u003e\"\n    app.github.clientsecret=\"\u003cGitHub OAuth client secret\u003e\"\n    app.github.oauthtoken=\"\u003cGitHub OAuth access token\u003e\"\n    app.notification.email=\"claadmin@test.com\"\n    app.noreply.email=\"noreply@test.com\"\n    app.admin.email=\"claadmin@test.com\"\n    app.ccla.expiration=7\n    ```\n\n5. Update organization in conf/evolutions/default/1.sql\n\n    `INSERT INTO Organizations (name) VALUES ('testorg');`\n\n6. Generate a new application secret\n\n    `activator playUpdateSecret`\n\n7. Build it\n\n    `activator docker:publishLocal`\n\n8. Run it\n\n    `docker run -p 9000:9000 claportal:1.0-SNAPSHOT`\n\n9. Log in to localhost:9000/admin/login using credentials claadmin:claadmin (Note: These credentials are hard-coded in Authenticator.java. If you decide to use this in production, you should update the authenticate method for your identity provider.)\n\n10. Select \"Manage Projects\" to load all repositories from your organization\n\n11. Select a repository, click Edit, and set the CLA to Sample (Note: When you save, this will install the web hook to the repository on GitHub for pull request events.)\n\n12. Submit a pull request to your repository (Note: Organization members do not sign the CLA, so submit a pull request using an account that is not a member of the organization.)\n\n### Developer Certificate of Origin (DCO)\n\n1. Log in to localhost:9000/admin/login using credentials claadmin:claadmin (Note: These credentials are hard-coded in Authenticator.java. If you decide to use this in production, you should update the authenticate method for your identity provider.)\n\n2. Select \"Edit DCO\" to create the initial DCO agreement revision\n\n3. Select \"Manage Projects\" to load all repositories from your organization\n\n4. Select a repository, click Edit, and check \"Use DCO\" (Note: When you save, this will install the web hook to the repository on GitHub for pull request events.)\n\nWhen enabled on a repository, all commits within a pull request will be checked for a signature in the following format: `Signed-off-by: John Doe \u003cjohn.doe@example.com\u003e` that matches the commit author.\n\n## Contributing\n\nThe CLA Portal project team welcomes contributions from the community. If you wish to contribute code and you have not signed our contributor license agreement (CLA), our bot will update the issue when you open a Pull Request. For any questions about the CLA process, please refer to our [FAQ](https://cla.vmware.com/faq).\n\n## License\n\nThe CLA Portal is available under the [Apache 2 license](LICENSE).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvmware-archive%2Fclaportal","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fvmware-archive%2Fclaportal","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvmware-archive%2Fclaportal/lists"}