GithubHelp home page GithubHelp logo

uwit-iam / uw-husky-directory Goto Github PK

View Code? Open in Web Editor NEW
0.0 12.0 0.0 798 KB

Public-facing directory of UW students, faculty, and staff: https://directory.uw.edu

License: MIT License

Python 66.81% HTML 6.38% Shell 3.56% Dockerfile 0.50% CSS 22.41% Jinja 0.35%

uw-husky-directory's Introduction

uw-husky-directory

Maintained by UW-IT Identity & Access Management.

This README contains some basic getting started instructions.

For full documentation, refer to the docs/ directory.

Organization of this repository:

+ uw-husky-directory
| + .github     # Github CICD configuration and scripts
| + docker      # Dockerfiles
| | + compose   # docker-compose files
| + docs        # Documentation about using and maintaining this package
| + husky_directory  # Source code for the application
| | + blueprints     # View/API blueprints
| | + models         # API models
| | + services       # Application/back-end services
| | + settings       # Application settings (dotenv and yml files)
| | + templates      # jinja2 templates
| + static      # Static assets
| + tests       # Unit tests

Getting Started with Development

This package comes with convenience scripts to set up your environment. They should be macos and linux compatible. If you are working from a Windows machine, feel free to add similar scripts for that use case, or provide documentation on how to get started on Windows.

Pre-requisites:

  • Python, preferably 3+, to install poetry (if not already installed)
  • Poetry
  • Docker desktop, with a running docker daemon (required for deployments and selenium tests)
  • Python 3.8+, somewhere on your system, so that poetry can link your virtualenv to the right python binary for the application. (For instance, at ~/.pyenv/versions/3.8.6)

Validate that everything works by running poetry run tox.

Build Dependencies

poetry

  • Poetry manages our dependencies and application version. (For more, refer to docs/poetry)
  • Docker builds our application to prepare it for deployment, and docker-compose runs our selenium tests. (For more, refer to docs/docker).
  • Tox invokes build and testing tasks. (For more, refer to docs/tox)

uw-husky-directory's People

Contributors

goulter avatar jdiverp avatar github-actions[bot] avatar

Watchers

Joby Walker avatar James Cloos avatar Tyler Thompson avatar Jim Fox avatar Thomas Johnson avatar Soufiane avatar Laura Jaurequi avatar James Morris avatar Heidi Berrysmith avatar Toygan avatar  avatar Jim Tomlinson avatar

uw-husky-directory's Issues

Fix the "Pull request validation workflow"

The "Pull request validation workflow" was broken because it was using the "Configure gcloud and docker" workflow at "UWIT-IAM/actions/configure-gcloud-docker".

The configure-gcloud-docker workflow was references google-github-actions/setup-gcloud@v0 which is outdated and does not support Python 3.10.x.

Manually bump version number to check if auto deploy to dev instance is still working.

I've made lots of changes to the deploy workflows, especially deploy.yml and its supporting scripts.
A pre-existing feature is for whenever the application version changes (manually with PR change to pyproject.toml or tagging a PR with at least a "minor" semver guidance), a deploy is automagically made to the dev instance (if all prior checks pass).
Dev branch status is at https://directory.iamdev.s.uw.edu/status

{
"deployment_id": "2022.12.16.23.26.58.v2.2.5",
"pws_is_ready": true,
"ready": true,
"start_time": "23-01-05 16:44:37",
"version": "2.2.5"
}
and any 2.2.5 here should change to 2.2.6, along with the date/prefix.

Fix the "Deploy the UW Directory" workflow

  1. The target_cluster shouldn't always go to dev.
  2. Python version might need to be updated per this error when running the "Deploy the UW Directory" workflow:
    2 (above) was fixed in #150
    1 (above) was fixed in pull requests that reference GH 147 in this same time period.

Run sudo apt-get -y install jq
Reading package lists...
Building dependency tree...
Reading state information...
jq is already the newest version (1.6-2.1ubuntu3).
0 upgraded, 0 newly installed, 0 to remove and 14 not upgraded.
The currently activated Python version 3.10.6 is not supported by the project (>=3.8,<3.9).
Trying to find and use a compatible version.

NoCompatiblePythonVersionFound

Poetry was unable to find a compatible version. If you have one, you can explicitly use it via the "env use" command.

at ~/.local/lib/python3.10/site-packages/poetry/utils/env.py:768 in create_venv
764│ python_minor = ".".join(python_patch.split(".")[:2])
765│ break
766│
767│ if not executable:
→ 768│ raise NoCompatiblePythonVersionFound(
769│ self._poetry.package.python_versions
770│ )
771│
772│ if root_venv:
Error: Process completed with exit code 1.

The Error "Something unexpected happened. Please try again or email [email protected] describing your problem." occurs when using Summary/More/Back/More

This may very well be a pre-existing bug as it doesn't always occur.
When performing a search (in this case a name search, but that shouldn't matter), select "Summary" for "Kind of Listing".
Click search
Click More
Click the browser's "back" button
Click More
Error occurs (see title of this issue).

This also can happen when
Click search
Click More
Click search
Click More
Error occurs (see title of this issue).

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.