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

Fix setting env name with a property #568

Merged
merged 4 commits into from
May 22, 2024

Conversation

antlai-temporal
Copy link
Contributor

What was changed

Ensure that we read the property TEMPORAL_ENV, which sets then env name,
early on, i.e., in preprocessOptions.

Why?

Otherwise it is too late to have an effect...

Checklist

  1. Closes
    [Bug] TEMPORAL_ENV may not be working #541
  2. How was this tested:

Added a system test
3. Any docs updates needed?
No

Comment on lines 494 to 495
s.NoError(os.Setenv("TEMPORAL_ENV", "myenv"))
defer os.Unsetenv("TEMPORAL_ENV")
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You should be able to replace LookupEnv in the CLI options instead of using actual environment variables that affect everything globally. See TestWorkflow_Execute_EnvVars in commands.workflow_exec_test.go for an example (I saw we unfortunately have others not doing this in tests that should).

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I saw that but I though using a system property "for real" may be a better test than faking it... Are there any side-effects of using a real system property in the test?

Copy link
Member

@cretz cretz May 20, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This can damage our ability to do parallel tests in the future. Tests need to be as self-contained as possible. It's mocked out at the highest level, so you're not getting much more using the real env var I don't think.

@@ -89,6 +89,8 @@ func NewCommandContext(ctx context.Context, options CommandOptions) (*CommandCon
return cctx, stop, nil
}

const temporalEnv = "TEMPORAL_ENV"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think there's much value in making this a constant that is used in one place, but meh

@antlai-temporal antlai-temporal merged commit 69dd427 into temporalio:main May 22, 2024
7 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.

None yet

2 participants