- Removed unnecessary log_info statements in 03_generate_secrets.sh to reduce clutter and improve readability.
- Updated 04_wizard.sh by removing a log_info statement related to setting COMPOSE_PROFILES, streamlining the output during configuration.
- Eliminated WEAVIATE_PASSWORD and WEAVIATE_PASSWORD_HASH from .env.example, Caddyfile, Docker Compose, and the secret generation script to enhance security by avoiding plaintext password exposure.
- Updated related scripts to reflect the removal of Weaviate password management, ensuring a streamlined configuration.
- Introduced NEO4J_AUTH_USERNAME variable to manage Neo4j username in the secret generation process.
- Updated user input variable list and logic to accommodate the new username variable, ensuring proper handling in the .env file.
- Modified Caddyfile to configure reverse proxy for Neo4j HTTP and Bolt protocols.
- Updated Docker Compose to expose port 7687 for Neo4j Bolt protocol access.
- Added PROMETHEUS_PASSWORD_HASH, SEARXNG_PASSWORD_HASH, and WEAVIATE_PASSWORD_HASH to .env.example for improved security management of sensitive data.
- Introduced _update_or_add_env_var function to streamline updating or adding variables in the .env file.
- Added _generate_and_get_hash function to handle password hashing using Caddy, improving security for sensitive data.
- Refactored logic for generating and storing password hashes for Prometheus, SearXNG, and Weaviate, ensuring consistent handling and updates in the .env file.
- Modified the cap_drop directive in the Docker Compose configuration to ensure correct multi-line YAML format.
- Added a note to re-enable the cap_drop directive after the first run for enhanced security.
- Moved the declaration of the generated_values associative array to a more appropriate location in 03_generate_secrets.sh for better organization.
- Removed redundant declaration of generated_values to streamline the script's logic and enhance readability.
- Added RUN_N8N_IMPORT_COMPLETE variable to .env.example to track the completion status of n8n workflow imports.
- Updated 03_generate_secrets.sh to manage user prompts for importing workflows and preserve the import status across sessions.
- Refined the logic for determining whether to prompt the user for importing workflows based on previous completion status.
- Added USER_DOMAIN_NAME variable to .env.example for user-defined domain configuration.
- Updated 03_generate_secrets.sh to improve domain input handling, including validation and user prompts.
- Simplified the process of retrieving and confirming the primary domain name for services.
- Removed redundant log message in 04_wizard.sh related to COMPOSE_PROFILES.
- Updated success messages in apply_update.sh for improved readability and conciseness.
- Introduced a new section in README.md to acknowledge project contributors.
- Added a link to the GitHub Contributors Page for easy access to contributor information.
- Added COMPOSE_PROFILES variable to .env.example for better service profile management.
- Enhanced logging in 04_wizard.sh to provide clearer information on the read COMPOSE_PROFILES value.
- Updated apply_update.sh to improve success messages and removed redundant service stopping logic for clarity.
- Added Weaviate username and password hash environment variables to docker-compose.yml for improved security and configuration.
- Updated 03_generate_secrets.sh to better handle existing environment variables and ensure proper initialization of the .env file.
- Set default Neo4j username in .env.example for easier configuration.
- Removed dynamic assignment of Neo4j username in 03_generate_secrets.sh to streamline secret generation.
- Updated user input variable list to reflect the changes in Neo4j username handling.
- Introduced a new section in README.md detailing the pre-installed Node.js libraries available for use in n8n's Code nodes, including `cheerio`, `axios`, `moment`, and `lodash`.
- Enhanced user understanding of available tools for web scraping, API requests, date manipulation, and utility functions.
- Added Weaviate username, password, and API key placeholders to .env.example.
- Updated Caddyfile to include Prometheus reverse proxy settings.
- Enhanced docker-compose.yml with health checks and ulimits for Neo4j service.
- Modified scripts to include Neo4j in the service selection and final report outputs.
- Introduced Neo4j service in docker-compose.yml with necessary environment variables and volume mappings.
- Updated Caddyfile to include reverse proxy settings for Neo4j.
- Enhanced .env.example to include placeholders for Neo4j username and password.
- Modified README.md to document Neo4j integration and access details.
- Added .cursorignore file to specify files and directories to ignore during indexing.
- Introduced logic to infer the current domain from N8N_HOSTNAME or SUPABASE_HOSTNAME for user prompts in 03_generate_secrets.sh.
- Improved user prompts to display the current domain as a default suggestion, enhancing user experience.
- Updated apply_update.sh to ensure the .env file is checked and updated by calling 03_generate_secrets.sh during the update process.
- Introduced Weaviate service in docker-compose.yml with necessary environment variables and health checks.
- Updated Caddyfile to include reverse proxy settings for Weaviate with basic authentication.
- Enhanced README.md to document Weaviate's integration and access details.
- Modified scripts to generate secrets for Weaviate, including username and password handling.
- Updated final report script to display Weaviate configuration details for user clarity.
- Eliminated unnecessary log_info statements in 03_generate_secrets.sh, 06_final_report.sh, and apply_update.sh to streamline output and enhance readability.
- Adjusted echo statements in 06_final_report.sh to maintain focus on essential information without clutter.
- Enhanced user feedback by replacing echo statements with log_info and log_error for better consistency in logging.
- Added empty echo statements before user prompts in 03_generate_secrets.sh to improve readability.
- Removed unnecessary log messages related to Caddy installation and uninstallation in 03_generate_secrets.sh.
- Updated 04_wizard.sh to include utility sourcing and improved logging for service selection and profile updates.
- Streamlined apply_update.sh by removing redundant log messages regarding Supabase compose file checks.
- Added a placeholder for LETTA_SERVER_PASSWORD to the .env.example file for clarity in configuration.
- Included a section separator for better organization of environment variables.
- Removed comments for gRPC and HTTP REST API ports in docker-compose.yml to simplify the configuration.
- Corrected the internal REST API access message in final_report.sh to reflect the updated port usage, ensuring clarity in service access instructions.
- Removed detailed PostgreSQL connection information to streamline output.
- Added Service Role Secret to provide necessary context for Supabase configuration.
- Improved overall readability of the Supabase section in the final report.
- Updated the comment for the cap_drop directive to clarify its temporary status for initial testing, ensuring users are aware of the context without referencing external documentation.
- Removed redundant service selection wizard invocation from the pull section, ensuring it runs first to update service choices.
- Enhanced logging messages for clarity regarding the Supabase compose file inclusion and Docker image pulling.
- Improved error handling for the service selection wizard failure, preventing continuation of the update process if it fails.
- Updated the is_supabase_enabled function to read COMPOSE_PROFILES from the .env file instead of os.environ, improving clarity.
- Simplified the run_command function by removing the unused env parameter.
- Refined the stop_existing_containers function to streamline the shutdown process for the 'localai' project, conditionally including the Supabase compose file.
- Enhanced logging for better user feedback during service management operations.
- Adjusted the scripts for generating secrets and applying updates to improve clarity and functionality.
- Included .env.bak in the .gitignore file to prevent backup environment files from being tracked by Git, ensuring a cleaner repository and reducing the risk of accidentally committing sensitive information.
- Updated the stop_existing_containers function to conditionally include the Supabase compose file only if Supabase is enabled, improving clarity and functionality.
- Added logging to inform users about the presence or absence of the Supabase compose file, enhancing the shutdown process.
- Included checks for the existence of the Supabase compose file to provide context when Supabase is disabled, ensuring better user feedback.
- Commented out the cap_drop directive to allow for initial testing without dropping all capabilities, as noted in the accompanying documentation.
- Retained the entrypoint script for managing directory permissions and starting the SearXNG application, ensuring functionality remains intact during this change.
- Introduced an entrypoint script to handle directory permissions for the SearXNG service, ensuring proper ownership and access rights.
- The script includes commands to change ownership and permissions of the /etc/searxng directory before starting the SearXNG application, enhancing security and functionality during container startup.
- Introduced a new function, force_stop_lingering_containers, to identify and force stop containers that may be running outside of the current Docker Compose management.
- Implemented logic to check for specific container patterns and handle stopping and removing them, enhancing the shutdown process.
- Improved error handling to manage potential issues during the force stop operation, ensuring robustness in service management.
- Updated the stop_existing_containers function to explicitly remove the COMPOSE_PROFILES environment variable when stopping and removing containers, ensuring all services are affected.
- Improved clarity by modifying the environment passed to run_command for both stop and remove operations, enhancing the shutdown process consistency.
- Updated the stop_existing_containers function to explicitly stop and remove all existing containers for the 'localai' project.
- Enhanced logging to provide clearer messages regarding the presence of the Supabase compose file during the shutdown process.
- Separated the stop and remove commands for better readability and maintainability of the shutdown logic.
- Modified the run_command function to include an optional env parameter, allowing explicit environment variable management during subprocess execution.
- Updated calls to run_command throughout the script to pass os.environ.copy(), ensuring the correct COMPOSE_PROFILES are used for service operations.
- Removed outdated comments regarding COMPOSE_PROFILES manipulation, reflecting the current environment handling approach.
- Updated the 'down' command to always include the Supabase compose file if it exists, ensuring proper shutdown of services.
- Removed the temporary clearing of COMPOSE_PROFILES, as the current environment is now managed by load_dotenv().
- Enhanced logging to inform users about the presence or absence of the Supabase compose file during shutdown.
- Enhanced the 'down' command to conditionally include the Supabase compose file based on the current environment settings.
- Implemented temporary clearing of COMPOSE_PROFILES to ensure all services are affected during shutdown.
- Added error handling to restore the original COMPOSE_PROFILES after command execution, maintaining environment integrity.
- Added load_dotenv() to load environment variables from the .env file, ensuring that COMPOSE_PROFILES is retrieved from the environment.
- Updated the is_supabase_enabled() function to check for 'supabase' in the environment variable instead of directly from the .env file.
- Improved the documentation to clarify the reliance on environment variables for service configuration.
- Moved the installation summary logging from 06_final_report.sh to install.sh to ensure it is displayed immediately after the installation steps.
- Improved the organization of the final report generation process by consolidating related logging functionality.
- Enhanced user visibility of installation steps performed during the setup process.
- Implemented a final report display feature in apply_update.sh to show service credentials post-update.
- Added error handling to log a warning if the final report fails to display, ensuring the update process remains unaffected.
- Enhanced user experience by providing a summary of service credentials after a successful update.
- Updated the service selection logic in 04_wizard.sh to dynamically populate available services based on current COMPOSE_PROFILES from the .env file.
- Enhanced the Ollama hardware profile selection to reflect user choices and defaults based on existing profiles.
- Integrated the service selection wizard into apply_update.sh to streamline the update process and ensure user-defined service configurations are applied.
- Improved user prompts and handling for service choices, enhancing overall configuration experience.
- Added logic to determine the N8N_WORKFLOWS_IMPORTED_EVER variable based on existing environment values and user input.
- Updated the apply_update.sh script to check if workflows have been imported previously, modifying the RUN_N8N_IMPORT and N8N_WORKFLOWS_IMPORTED_EVER variables accordingly.
- Improved user prompts for importing n8n workflows, ensuring a smoother configuration experience.