Skip to content

Dev#5

Merged
Hordunlarmy merged 13 commits into
mainfrom
dev
Jan 29, 2026
Merged

Dev#5
Hordunlarmy merged 13 commits into
mainfrom
dev

Conversation

@Hordunlarmy
Copy link
Copy Markdown
Member

This pull request introduces several improvements and refactors to streamline testing, deployment, and configuration for the MetalDeploy project. The most significant changes include enhanced multi-server deployment and artifact copying support, modernization of CI/CD workflows (GitHub Actions and Jenkins), and improved linting/test automation. Additionally, configuration files have been updated for more robust environment management and code quality enforcement.

Major feature enhancements:

  • Multi-server deployment and artifact copying:
    • Added support for deploying to multiple servers at once by allowing comma-separated lists for remote_host, remote_user, ssh_key, and remote_password in both action.yml and documentation.
    • Introduced the copy_artifacts input to enable efficient copying of build artifacts (e.g., dist/, node_modules) to remote servers with automatic compression.
    • Updated the README.md with usage examples for both features. [1] [2] [3] [4] [5]

CI/CD workflow modernization:

  • GitHub Actions workflows:

    • Consolidated and simplified test and linting steps in .github/workflows/test.yml by delegating to make commands for running tests, linting, and validation.
    • Removed redundant or example deployment workflows for baremetal, Docker, and Kubernetes. [1] [2] [3] [4] [5] [6]
  • Jenkinsfile improvements:

    • Updated to use the correct container image and registry settings.
    • Refactored to support branch-based deployments (staging and production), improved secret handling, and clarified environment variable mapping.

Testing and linting automation:

  • Makefile enhancements:
    • Improved test targets for unit, integration, and coverage testing.
    • Centralized linting and validation commands.
    • Enhanced the clean target to remove generated environment directories. [1] [2]

Configuration and code quality:

  • Environment and linting configuration:
    • Added a comprehensive .env.test file for exhaustive test scenarios.
    • Introduced a .flake8 configuration for consistent linting, and updated .pre-commit-config.yaml to exclude generated envs and align with new linting rules. [1] [2] [3] [4]

These updates collectively make the deployment process more flexible, robust, and maintainable, while improving developer experience and code quality.

@Hordunlarmy Hordunlarmy merged commit 4d692d2 into main Jan 29, 2026
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant