Skip to content

Commit fe224ab

Browse files
chore: force fallback in alpine fips mode
1 parent e80be82 commit fe224ab

3 files changed

Lines changed: 11 additions & 1 deletion

File tree

bottlecap/Cargo.toml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -78,3 +78,4 @@ fips = [
7878
"reqwest/rustls-tls-no-provider",
7979
"rustls/fips",
8080
]
81+
force_fallback = []

bottlecap/src/config/mod.rs

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -209,6 +209,13 @@ fn log_fallback_reason(reason: &str) {
209209
println!("{{\"DD_EXTENSION_FALLBACK_REASON\":\"{reason}\"}}");
210210
}
211211

212+
#[cfg(feature = "force_fallback")]
213+
fn fallback(_figment: &Figment, _yaml_figment: &Figment) -> Result<(), ConfigError> {
214+
log_fallback_reason("force_fallback");
215+
Err(ConfigError::UnsupportedField("force_fallback".to_string()))
216+
}
217+
218+
#[cfg(not(feature = "force_fallback"))]
212219
fn fallback(figment: &Figment, yaml_figment: &Figment) -> Result<(), ConfigError> {
213220
let (config, yaml_config): (FallbackConfig, FallbackYamlConfig) =
214221
match (figment.extract(), yaml_figment.extract()) {

images/Dockerfile.bottlecap.alpine.compile

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,9 +32,11 @@ ENV AWS_LC_FIPS_SYS_CC=clang
3232
ENV AWS_LC_FIPS_SYS_CXX=clang++
3333

3434
WORKDIR /tmp/dd/bottlecap
35+
# we can't currently compile successfully in alpine for fips mode, so we force
36+
# fallback in alpine fips to the go agent.
3537
RUN --mount=type=cache,target=/root/.cargo/registry \
3638
if [ "$FIPS" = "1" ]; then \
37-
export FEATURES=fips; \
39+
export FEATURES="default,force_fallback"; \
3840
else \
3941
export FEATURES=default; \
4042
fi; \

0 commit comments

Comments
 (0)