Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Standardize Configuration Naming Convention - CamelCase or snake_case #31

Open
tusharmath opened this issue Jun 2, 2023 · 0 comments
Open

Comments

@tusharmath
Copy link

tusharmath commented Jun 2, 2023

Hello 👋,

First and foremost, I want to say a huge thank you 🙏 for your work on mirromutth/mysql-action@v1.1. It has been an incredibly helpful tool that has greatly enhanced our workflow.

In using this action, I've noticed that the current configuration employs spaces in its property names, such as host port, container port, character set server, collation server, mysql version, mysql database, mysql root password, mysql user, mysql password and so on.

- uses: mirromutth/mysql-action@v1.1
  with:
    host port: 3800
    container port: 3307
    character set server: 'utf8'
    collation server: 'utf8_general_ci'
    mysql version: '8.0'
    mysql database: 'some_test'
    mysql root password: ${{ secrets.RootPassword }}
    mysql user: 'developer'
    mysql password: ${{ secrets.DatabasePassword }}

This is a bit unusual 🧐 when compared to most naming conventions in programming languages or configuration schemas and could potentially lead to confusion or errors. Additionally, we've found this to be a blocker 🚧 when trying to use sbt-github-actions as it validates the YML based on these naming conventions.

Hence, I'd like to propose 📝 a small but significant improvement. Let's standardize the naming convention to something more common, like CamelCase (hostPort, containerPort, characterSetServer, collationServer, mysqlVersion, etc.) or snake_case (host_port, container_port, character_set_server, collation_server, mysql_version, etc.).

# Example in CamelCase
- uses: mirromutth/mysql-action@v1.1
  with:
    hostPort: 3800
    containerPort: 3307
    characterSetServer: 'utf8'
    collationServer: 'utf8_general_ci'
    mysqlVersion: '8.0'
    mysqlDatabase: 'some_test'
    mysqlRootPassword: ${{ secrets.RootPassword }}
    mysqlUser: 'developer'
    mysqlPassword: ${{ secrets.DatabasePassword }}

# Example in snake_case
- uses: mirromutth/mysql-action@v1.1
  with:
    host_port: 3800
    container_port: 3307
    character_set_server: 'utf8'
    collation_server: 'utf8_general_ci'
    mysql_version: '8.0'
    mysql_database: 'some_test'
    mysql_root_password: ${{ secrets.RootPassword }}
    mysql_user: 'developer'
    mysql_password: ${{ secrets.DatabasePassword }}

Switching to a more standardized configuration property naming could pave the way for a more intuitive and consistent developer experience 🚀.

Thank you 🙏 for your effort on this action, and I'm convinced these changes would go a long way in enhancing its usability and the overall developer experience.

Thank you for considering this proposal 📜. I'm eagerly looking forward to your thoughts on this.

Best regards,

Tushar

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

No branches or pull requests

1 participant