Refactored the assignment of FORGEJO_URL to use a more idiomatic fallback approach in case the environment variable is not set. This change ensures that None values are handled correctly and the default URL is used when the environment variable FORGEJO_URL is undefined, enhancing reliability.
Refactored the chores script to improve the robustness of environment
variable handling. This includes mandatory checks for the FORGEJO_TOKEN
and default values or prompts for missing optional environment
variables. Added assertion to ensure the token is present after
retrieval which, combined with the KeyError, will provide better error
handling. Optional variables now use a fallback value directly in the
get method for concise expression.
Resolves issue with silent failures when required environment settings
are not provided.
Casting `CHORES_EXPIRY_DAYS` environment variable to int ensures that
the expiry days value is correctly interpreted for use throughout the
application without type errors. This small but critical change
guarantees consistent behavior when dealing with time-based logic. No
issue reference provided.
Introduced a set of environment variables in the CI workflow
configuration to align with the chores script's requirements. The
workflow now passes explicit values for necessary variables, matching
the environment variable name changes in the chores script for
consistency and clarity. Ensured correct token usage by updating TO
token reference. This change facilitates better configuration management
and error handling in automated tasks.
compatibility
Updated the environment variable for authentication to align with the
pipeline's token-naming conventions, improving integration and
consistency across our automated workflows. Error messaging reflects
this change for clarity during troubleshooting.
Implemented a new Forgejo Action workflow to automatically create weekly
chores issues based on a Python script. This workflow triggers on
commits and the Python script uses project-specific environment
variables to customize the issue creation, including setting due dates
and assigning users. Streamlines project maintenance and ensures regular
task management.