Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions .github/workflows/pipeline.yml
Original file line number Diff line number Diff line change
Expand Up @@ -28,5 +28,8 @@ jobs:
id: login-ecr
uses: aws-actions/amazon-ecr-login@v1

- name: Linting
run: cargo fmt -- --check && cargo clippy -- -Dwarnings

- name: Build
run: DOCKER_BUILDKIT=1 docker build -f Dockerfile.x86 -t aws-lambda-adapter:latest .
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -76,7 +76,7 @@ Below is an example Dockerfile for packaging a nodejs application.

```dockerfile
FROM public.ecr.aws/lambda/nodejs:14
COPY --from=aws-lambda-adapter:latest /opt/bootstrap
COPY --from=aws-lambda-adapter:latest /opt/bootstrap /opt/bootstrap
ENTRYPOINT ["/opt/bootstrap"]
EXPOSE 8080
WORKDIR "/var/task"
Expand Down
12 changes: 6 additions & 6 deletions src/main.rs
Original file line number Diff line number Diff line change
Expand Up @@ -62,8 +62,8 @@ async fn main() -> Result<(), Error> {
Retry::spawn(FixedInterval::from_millis(10), || {
let readiness_check_url = format!(
"http://127.0.0.1:{}{}",
env::var("READINESS_CHECK_PORT").unwrap_or("8080".to_string()),
env::var("READINESS_CHECK_PATH").unwrap_or("/".to_string())
env::var("READINESS_CHECK_PORT").unwrap_or_else(|_| "8080".to_string()),
env::var("READINESS_CHECK_PATH").unwrap_or_else(|_| "/".to_string())
);
reqwest::get(readiness_check_url)
})
Expand Down Expand Up @@ -142,7 +142,7 @@ async fn handle_signals(
async fn http_proxy_handler(event: Request, _: Context) -> Result<impl IntoResponse, Error> {
let app_host = format!(
"http://127.0.0.1:{}",
env::var("PORT").unwrap_or("8080".to_string())
env::var("PORT").unwrap_or_else(|_| "8080".to_string())
);
let (parts, body) = event.into_parts();
let app_url = app_host + parts.uri.path_and_query().unwrap().as_str();
Expand Down Expand Up @@ -184,16 +184,16 @@ async fn convert_body(app_response: reqwest::Response) -> Result<Body, Error> {
debug!("body is text");
let body_text = app_response.text().await?;
trace!("body text is '{}'", body_text);
return Ok(Body::Text(body_text))
return Ok(Body::Text(body_text));
}
let content = app_response.bytes().await?;
return if content.len() > 0 {
return if !content.is_empty() {
debug!("body is binary");
Ok(Body::Binary(content.to_vec()))
} else {
debug! {"body is empty"};
Ok(Body::Empty)
}
};
}

fn copy_headers(src: HeaderMap, dst: &mut HeaderMap) {
Expand Down