feat: set `remote.type` dynamically from env
Feature Request
Description
I have a template project hosted both on GitHub and GitLab mostly for demostration, and I want to leverage both GitHub Actions and GitLab CI/CD, so I need to set the remote.type dynamically. But it seems that a validation error will happen when I try to set an env for it.
Expected behavior
Possibility to set remote.type with env.
Actual behavior
A validation error is raised.
Environment
- Operating System (w/ version): Ubuntu 22.04
- Python version: 3.10.12
- Pip version: N/A
- Semantic-release version: 9.14.0
- Build tool (w/ version): N/A
pip freeze
N/A
git log --oneline --decorate --graph --all -n 50
N/A
Configuration
Semantic Release Configuration
[tool.semantic_release.remote.type]
env = "SEMANTIC_RELEASE_REMOTE_TYPE"
default = "github"
Build System Configuration
N/A
GitHub Actions Job Definition
N/A
Execution Log
semantic-release -vv command
[06:05:45] DEBUG [main.main] logging level set to: DEBUG main.py:124
🛡 You are running in no-operation mode, because the '--noop' flag was supplied
DEBUG [main.main] global cli options: GlobalCommandLineOptions(noop=True, verbosity=2, config_file='pyproject.toml', strict=False) main.py:139
INFO [util.load_raw_config_file] Loading configuration from pyproject.toml util.py:79
DEBUG [util.load_raw_config_file] Trying to parse configuration pyproject.toml in TOML format util.py:82
1 validation error for RawConfig
remote.type
Input should be 'bitbucket', 'github', 'gitlab' or 'gitea' [type=enum, input_value={'env': 'SEMANTIC_RELEASE...E', 'default': 'github'}, input_type=dict]
For further information visit https://errors.pydantic.dev/2.9/v/enum
Additional context
N/A
@huxuan, unfortunately it's not a bug, but it is not configured to support an env variable input at this time.
Changing this to a feature request and adding it to the backlog. Thanks for the desired use case. This may ultimately help out #149.
Sorry I tried to search but did not find that issue, will close this one as already tracked there. Thanks for the prompt response!
That's not quite what I meant, I just realized that the resolution of this issue would partially lead to a resolution of the other one. The other one has been open for years without really any solution that made sense, is all.
It has been 60 days since the last update on this confirmed issue. @python-semantic-release/team can you provide an update on the status of this issue?
Still in the backlog, I forgot about this one, it should be easy to knock out quickly.
It has been 60 days since the last update on this confirmed issue. @python-semantic-release/team can you provide an update on the status of this issue?
Still in backlog
It has been 60 days since the last update on this confirmed issue. @python-semantic-release/team can you provide an update on the status of this issue?
Still in backlog
It has been 90 days since the last update on this confirmed issue. @python-semantic-release/team can you provide an update on the status of this issue?
No update yet, still in backlog.
It has been 90 days since the last update on this confirmed issue. @python-semantic-release/team can you provide an update on the status of this issue?