{"id":19140081,"url":"https://github.com/circleci/realitycheck","last_synced_at":"2026-01-25T08:30:57.954Z","repository":{"id":24876540,"uuid":"98691057","full_name":"circleci/realitycheck","owner":"circleci","description":"A sample app that reality-checks some basic CircleCI features","archived":false,"fork":false,"pushed_at":"2025-12-03T05:26:00.000Z","size":842,"stargazers_count":29,"open_issues_count":3,"forks_count":190,"subscribers_count":75,"default_branch":"master","last_synced_at":"2025-12-06T06:47:38.179Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":null,"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/circleci.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":".github/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2017-07-28T21:55:30.000Z","updated_at":"2025-12-05T13:48:42.000Z","dependencies_parsed_at":"2023-02-12T04:17:15.173Z","dependency_job_id":"a68301c7-6d74-4605-b78e-02f8f5c2946a","html_url":"https://github.com/circleci/realitycheck","commit_stats":{"total_commits":184,"total_committers":18,"mean_commits":"10.222222222222221","dds":0.5760869565217391,"last_synced_commit":"442b05c22b7eadbb68ffa19966157614b9b37fce"},"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"purl":"pkg:github/circleci/realitycheck","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/circleci%2Frealitycheck","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/circleci%2Frealitycheck/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/circleci%2Frealitycheck/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/circleci%2Frealitycheck/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/circleci","download_url":"https://codeload.github.com/circleci/realitycheck/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/circleci%2Frealitycheck/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28749282,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-25T07:58:02.558Z","status":"ssl_error","status_checked_at":"2026-01-25T07:57:57.153Z","response_time":113,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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-11-09T07:16:12.150Z","updated_at":"2026-01-25T08:30:57.938Z","avatar_url":"https://github.com/circleci.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# CircleCI Reality Check\nThis repository is used to check for a proper installation of CircleCI Server. It implements a sample app that validates some basic CircleCI features in parallel workflows.\n\n![](misc/reality_check.png)\n\n---\n\n## Installation\nTo install and run reality check on your CircleCI Server installation, follow these steps.\n\n1. Fork this repository to the GitHub environment tied to your server installation. [See here for more information](https://support.circleci.com/hc/en-us/articles/360011235534).\n\n2. Set up your repository project in your CircleCI Server installation.\n\n3. Generate a **personal api token - not a project token**, and add it as an environment variable in your project with the name `CIRCLE_TOKEN`.\n\n4. Determine the base URL of your install, including protocol, and remove the trailing slash and \"app\" subdomain if present. Add it as an environment variable in your project with the name `CIRCLE_HOSTNAME`. \n\n    \u003e *Note*: As an example, if your dashboard is accessible at `https://app.server.example.com/dashboard/` your `CIRCLE_HOSTNAME` is `https://server.example.com`\n\n\n5. Set the environment variable in your project with the name `CIRCLE_CLOUD_PROVIDER` as either `gcp`, `aws`, or `other`. depending on your installation.\n\n6. You can __optionally__ set `CIRCLE_WINDOWS_EXECUTOR` to `true` in order to run a set of verification jobs for the windows execution environment. This requires a supported CircleCI Windows image, see instructions in [CircleCI-Public/circleci-server-windows-image-builder](https://github.com/CircleCI-Public/circleci-server-windows-image-builder).\n\n7. Configure the following contexts and keys (their values can be anything). Docs on how to set up contexts [can be found here](https://circleci.com/docs/2.0/contexts/).\n\nContext Name       | Environment Variable Key Name  | Value   \n-------------------|------------------------------- |-----------------------------\n`org-global`       | `CONTEXT_END_TO_END_TEST_VAR`  | `1`\n`individual-local` | `MULTI_CONTEXT_END_TO_END_VAR` | `1`\n\n### Example AWS Server Installation\n```bash\n# Project Environment Variables\nCIRCLE_TOKEN=123456789-personal-access-token\nCIRCLE_HOSTNAME=https://aws-server-install.example.com\nCIRCLE_CLOUD_PROVIDER=aws\nCIRCLE_WINDOWS_EXECUTOR=true # Optional, only if using a Windowws AMI\n\n# org-global context environment variables\nCONTEXT_END_TO_END_TEST_VAR=1\n\n# individual-local context environment variables\nMULTI_CONTEXT_END_TO_END_VAR=1\n```\n\n### Example GCP Server Installation\n```bash\n# Project Environment Variables\nCIRCLE_TOKEN=123456789-personal-access-token\nCIRCLE_HOSTNAME=https://gcp-server-install.example.com\nCIRCLE_CLOUD_PROVIDER=gcp\nCIRCLE_WINDOWS_EXECUTOR=true # Optional, only if using a Windows AMI\n\n# org-global context environment variables\nCONTEXT_END_TO_END_TEST_VAR=1\n\n# individual-local context environment variables\nMULTI_CONTEXT_END_TO_END_VAR=1\n```\n\n---\n\n## Running Reality Check\nOnce installed, to run reality check, make any commit to the default branch of your forked repository. If installed correctly, your CircleCI Server Installation will pick up the commit and build it in parallel workflows.\n\n```bash\ngit commit --allow-empty -m \"Trigger Build, Empty commit\" \u0026\u0026 git push\n```\n\n---\n\n## Reality Check Workflows\nDescriptions of the three workflows follow.\n\n## `resource_class` workflow\n\nTests all known `resource_class` options—queries the CircleCI API to verify that jobs ran with the requested resources.\n\n### Prerequisites\n- Your Nomad client instances must be large enough to accommodate these resource classes — see our [Configuration Reference](https://circleci.com/docs/2.0/configuration-reference/#resource_class) for details on the available resource classes and [our server docs](https://circleci.com/docs/2.0/nomad/#auto-scaling-policy-best-practices) about sizing your Nomad client instances.\n- The base URL of your CircleCI installation (e.g. https://circleci.com) must be specified via a `CIRCLE_HOSTNAME` project environment variable\n- A personal API token (see `CIRCLE_HOSTNAME/account/api` URL endpoint) must be stored as a `CIRCLE_TOKEN` project environment variable\n\n## VM service workflow\nTests the functionality  of the [`machine` executor](https://circleci.com/docs/2.0/executor-types/#using-machine), [Remote Docker Environment](https://circleci.com/docs/2.0/building-docker-images), and [Docker Layer Caching](https://circleci.com/docs/2.0/docker-layer-caching).\n\n## Features workflow\n- Tests ability to save and restore [caches](circleci.com/docs/2.0/caching)\n- Tests writing to and reading from [workspaces](https://circleci.com/docs/2.0/workflows/#using-workspaces-to-share-data-among-jobs)\n- Tests the default `org-global` [context](https://circleci.com/docs/2.0/contexts) (*NOTE:* needs a key called `CONTEXT_END_TO_END_TEST_VAR` to exist in a context called `org-global`) \n- Tests multiple contexts (*NOTE:* needs a key called `MULTI_CONTEXT_END_TO_END_VAR` to exist in a context called `individual-local`)\n- Tests upload/storage of [artifacts](https://circleci.com/docs/2.0/artifacts) and [test results](https://circleci.com/docs/2.0/collect-test-data)\n\n\n## GCP Jobs Workflow\nTests android machine images on Google Cloud Platform. First checks if the environment is configured for GCP with the CIRCLE_CLOUD_PROVIDER environment variable.\n\n### Prerequisites\nYou will need to have your CIRCLE_TOKEN environment variable set to a personal access token, and will need your CIRCLE_CLOUD_PROVIDER set to `gcp` in lower-case. You must also have nomad clients configured, and your vm-service configured.\n\n## AWS Jobs Workflow\nTests ARM based images on AWS. First checks if the environment is configured for AWS with the CIRCLE_CLOUD_PROVIDER environment variable.\n\n### Prerequisites\nYou will need to have your CIRCLE_TOKEN environment variable set to a personal access token, and will need your CIRCLE_CLOUD_PROVIDER set to `aws` in lower-case. You must also have nomad clients configured, and your vm-service configured.\n\n---\n\n## Contributing\nIf you have more ideas for things that should tested, please submit a PR against the open-source repository on GitHub where this project is maintained: \u003chttps://github.com/circleci/realitycheck\u003e.\nSee the current CI status of the main repo at \u003chttps://circleci.com/gh/circleci/workflows/realitycheck\u003e.\nView the LICENSE file in this repository for licensing information.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcircleci%2Frealitycheck","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcircleci%2Frealitycheck","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcircleci%2Frealitycheck/lists"}