Skip to content

minademian/server-utilities

Server Utilities

License: MIT Contributor Covenant PRs Welcome

A collection of server utilities for engineers, DevOps, SRE, and infrastructure teams.

Available Utilities

Utility Description Distribution Status
server-audit Modular server auditing tool for binary version checking and system inspection Homebrew, Maven 🚧 Release candidate
diff-check Git-based file difference checker for configuration drift detection Homebrew 🚧 Release candidate

Quick Start

From Source

git clone https://github.com/minademian/server-utilities.git
cd server-utilities
make install

Documentation

Each utility maintains its own comprehensive documentation:

  • server-audit - Server audit tool for checking installed binaries and configurations
  • diff-check - Git-based file difference checker for configuration drift detection

Project Documentation

For general contribution guidelines, security policies, and community standards, see the links above.

Architecture

This repository follows a monorepo structure where each directory represents an independently versioned and distributable utility:

server-utilities/
β”œβ”€β”€ server-audit/          # Server auditing tool
β”‚   β”œβ”€β”€ README.md         # Utility-specific documentation
β”‚   β”œβ”€β”€ CHANGELOG.md      # Version history
β”‚   └── ...
β”œβ”€β”€ [future-utility]/     # Additional utilities
β”œβ”€β”€ docs/                 # Shared documentation
β”œβ”€β”€ .github/              # CI/CD workflows
└── README.md            # This file

Design Principles

  1. Independence: Each utility can be used standalone
  2. Security-First: All tools strive to follow security best practices
  3. Production-Ready: Battle-tested in real-world environments
  4. Extensibility: Pluggable architecture for custom extensions
  5. Zero Trust: Explicit configuration required, safe defaults

Development

Prerequisites

  • For Shell-based utilities: Bash 4.0+, basic UNIX utilities
  • For Java utilities: JDK 11+, Maven 3.6+
  • For testing: ShellCheck, BATS (Bash Automated Testing System)

Building from Source

# Clone the repository
git clone https://github.com/minademian/server-utilities.git
cd server-utilities

# Build all utilities
make build

# Run tests
make test

# Install locally
make install

Running Tests

# Run all tests
make test

# Run tests for a specific utility
cd server-audit && make test

# Run integration tests
make integration-test

# Watch mode for development
make test-watch

Project Structure Standards

Each utility follows these conventions:

  • README.md - Comprehensive usage documentation
  • CHANGELOG.md - Version history following Keep a Changelog
  • Makefile - Standard build, test, install targets
  • tests/ - Unit and integration tests
  • docs/ - Additional documentation and assets
  • lib/ - Core implementation files

Contributing

We welcome contributions! Please see our Contributing Guidelines for details on:

  • Code of Conduct
  • Development workflow
  • Pull request process
  • Coding standards
  • Testing requirements

Quick Contribution Guide

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Make your changes with tests
  4. Run the test suite (make test)
  5. Commit using Conventional Commits
  6. Push to your fork (git push origin feature/amazing-feature)
  7. Open a Pull Request

Security

Security is a top priority. If you discover a security vulnerability, please follow our Security Policy.

Do not open public issues for security vulnerabilities.

Requirements

Minimum Requirements

  • OS: Linux (Ubuntu 20.04+, RHEL 8+, Debian 10+), macOS 11+
  • Shell: Bash 4.0+ or Zsh 5.0+
  • Network: SSH access to target servers (for remote operations)

Optional Dependencies

  • Git: For version control integration
  • Docker: For containerized deployments
  • GitHub CLI: For automated release workflows

Project Status

This project is actively maintained and used in production environments. See individual utility documentation for specific stability guarantees.

  • Maintenance Status: 🟒 Active
  • Support: Community-driven with commercial support available
  • Release Cadence: Monthly feature releases, weekly patches as needed

License

This project is licensed under the MIT License - see the LICENSE file for details.

Third-Party Licenses

All dependencies and their licenses are documented in THIRD_PARTY_NOTICES.

Acknowledgments

  • Built with production needs in mind

Support & Community

Getting Help

  1. Check the FAQ
  2. Search existing issues
  3. Read utility-specific documentation
  4. Ask in Discussions
  5. Open a new issue with the appropriate template

Roadmap

See ROADMAP.md for planned features and utilities.

Versioning

We use Semantic Versioning (SemVer) for all utilities:

  • MAJOR: Breaking changes
  • MINOR: New features (backward compatible)
  • PATCH: Bug fixes (backward compatible)

Each utility maintains its own version independently.

Commercial Support

Enterprise support, custom feature development, and SLA guarantees available upon request.


Made with ❀️ for the infrastructure community

About

A collection of server auditing utilities

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Sponsor this project

Packages

No packages published