{"id":24093251,"url":"https://github.com/umd-lib/spotlight","last_synced_at":"2025-02-27T10:47:44.669Z","repository":{"id":225394327,"uuid":"765845655","full_name":"umd-lib/spotlight","owner":"umd-lib","description":"Spotlight application for UMD Library exhibits","archived":false,"fork":false,"pushed_at":"2024-03-08T17:11:44.000Z","size":295,"stargazers_count":0,"open_issues_count":0,"forks_count":1,"subscribers_count":5,"default_branch":"main","last_synced_at":"2025-01-10T09:26:16.595Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/umd-lib.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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}},"created_at":"2024-03-01T18:26:10.000Z","updated_at":"2024-03-01T18:27:54.000Z","dependencies_parsed_at":"2024-03-01T21:36:10.537Z","dependency_job_id":null,"html_url":"https://github.com/umd-lib/spotlight","commit_stats":null,"previous_names":["umd-lib/spotlight"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/umd-lib%2Fspotlight","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/umd-lib%2Fspotlight/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/umd-lib%2Fspotlight/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/umd-lib%2Fspotlight/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/umd-lib","download_url":"https://codeload.github.com/umd-lib/spotlight/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":241005370,"owners_count":19892780,"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-10T09:26:36.496Z","updated_at":"2025-02-27T10:47:44.648Z","avatar_url":"https://github.com/umd-lib.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Spotlight\n\nRails application utilizing the Blacklight \"spotlight\" plugin\n(\u003chttps://github.com/projectblacklight/spotlight\u003e) to showcase digital\ncollection resources.\n\n----\n\n\u003e 🗒️ **Note**\n\u003e\n\u003e This implementation is a \"proof-of-concept\" implementation used for evaluation\n\u003e purposes.\n\n----\n\n## Application Creation\n\nSee [docs/ApplicationCreation.md](docs/ApplicationCreation.md) for information\non how this application as generated with the \"projectblacklight/spotlight\"\nRails application generator.\n\n## Local Development Environment\n\nInstructions for building and running Spotlight locally can be found in\n[docs/LocalDevelopmentEnvironment.md](docs/LocalDevelopmentEnvironment.md).\n\n## Multi-item Uploads\n\nSee [docs/MultiItemUploads.md](docs/MultiItemUploads.md)\n\n## OAI-PMH Uploads\n\nSee [docs/OaiPmhUploads.md](docs/OaiPmhUploads.md)\n\n## Building the Docker Images for K8s Deployment\n\nThe following procedure uses the Docker \"buildx\" functionality and the\nKubernetes \"build\" namespace to build the Docker images for use with the\n\"[umd-lib/k8s-spotlight][k8s-spotlight]\" Kubernetes configuration. This\nprocedure should work on both \"arm64\" and \"amd64\" MacBooks.\n\nThe images will be automatically pushed to the Nexus.\n\n### Local Machine Setup\n\nSee \u003chttps://github.com/umd-lib/k8s/blob/main/docs/DockerBuilds.md\u003e in GitHub\nfor information about setting up a MacBook to use the Kubernetes \"build\"\nnamespace.\n\n### Creating the Docker images\n\nCreating the “spotlight” Docker images for Kubernetes\n\n1. In an empty directory, clone the Git repository and switch into the\n   directory:\n\n    ```zsh\n    $ git clone git@github.com:umd-lib/spotlight.git\n    $ cd spotlight\n    ```\n\n2. Checkout the appropriate Git tag, branch, or commit for the Docker image.\n\n3. Set the `APP_TAG` environment variable:\n\n    ```zsh\n    $ export APP_TAG=\u003cDOCKER_IMAGE_TAG\u003e\n    ```\n\n   where \\\u003cDOCKER_IMAGE_TAG\u003e is the Docker image tag to associate with the\n   Docker image. This will typically be the Git tag for the application version,\n   or some other identifier, such as a Git commit hash. For example, using\n   the Git tag of \"1.0.0\":\n\n    ```zsh\n    $ export APP_TAG=1.0.0\n    ```\n\n4. Switch to the Kubernetes \"build\" namespace:\n\n    ```zsh\n    $ kubectl config use-context build\n    ```\n\n5. Build the Docker images using the Docker “buildx” tool:\n\n    ```zsh\n    $ docker buildx build --platform linux/amd64 --builder=kube --push --no-cache -t docker.lib.umd.edu/spotlight:$APP_TAG -f Dockerfile .\n    $ docker buildx build --platform linux/amd64 --builder=kube --push --no-cache -t docker.lib.umd.edu/spotlight-solr:$APP_TAG -f Dockerfile.solr .\n    ```\n\n   The Docker images will be automatically pushed to the Nexus.\n\n## Environment Variables\n\nThe following environment variables are used by the system when running in\nKubernetes. None of these variables are strictly necessary when running in the\nlocal development environment:\n\n* Email-related\n  * `SERVER_HOSTNAME` - The hostname of the server. Used for generating links in\n    the body of emails sent by the system.\n  * `SMTP_FROM_ADDRESS` - The email address to use as the \"From:\" email address\n  * `SMTP_ADDRESS` - hostname of the SMTP server\n  * `SMTP_PORT` - port of the SMTP server\n  * Other environment variables (`SMTP_DOMAIN`, `SMTP_USER_NAME`,\n    `SMTP_PASSWORD`, and `SMTP_AUTHENTICATION`) are not typically needed.\n* Database-related (for Postgres, in production)\n  * `PROD_DATABASE_ADAPTER` - The database adapter for production, typically\n    \"postgresql\"\n  * `PROD_DATABASE_NAME` - The name of the database, typically \"spotlight\"\n  * `PROD_DATABASE_ENCODING` - the database encoding, typically \"utf-8\"\n  * `PROD_DATABASE_USERNAME` - the username for the database, typically\n    \"spotlight\"\n  * `PROD_DATABASE_PASSWORD` - the password for the database user\n  * `PROD_DATABASE_HOST` - The hostname of the database\n  * `PROD_DATABASE_PORT` - The port the database runs on, typically \"5432\" for\n     Postgres\n  * `PROD_DATABASE_POOL` - The size of the database pool, typically \"10\"\n\n## License\n\nSee the [LICENSE](LICENSE.md) file for license rights and limitations\n(Apache 2.0).\n\n----\n\n[k8s-spotlight]: https://github.com/umd-lib/k8s-spotlight\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fumd-lib%2Fspotlight","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fumd-lib%2Fspotlight","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fumd-lib%2Fspotlight/lists"}