Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
39 commits
Select commit Hold shift + click to select a range
ce192f4
fix: default to nodejs10.x on init
sriram-mv Jul 16, 2019
2e5f7f1
fix: programatically choose latest node runtime as `default`
sriram-mv Jul 16, 2019
666e366
comments: add comments on runtime ordering per language
sriram-mv Jul 16, 2019
ad9a171
fix: Respect zipped symlinks (#1140)
bubba-h57 Jul 26, 2019
f19f218
doc: Adding testing guidelines (#1201)
sanathkr Jul 26, 2019
0b452bd
fix: Update copyright in LICENSE (#1295)
jfuss Jul 26, 2019
08049e8
fix: Update error message for package and deploy (#1152)
zafarella Jul 26, 2019
879cad4
chore: Upgrade dependencies (#1286)
jfuss Jul 26, 2019
fb06abe
feat(cli-logs): Configure and format SAM CLI logging to console (#1118)
jfuss Jul 26, 2019
b128a58
Merge pull request #1275 from TheSriram/node_init_fix
sriram-mv Jul 30, 2019
55d55ca
Update the .NET Core project template (#1226)
normj Aug 5, 2019
00f6c20
fix: fix unit tests so that they pass on windows (#1307)
sriram-mv Aug 5, 2019
6e16dd0
Merge branch 'develop' into candidate/release/20
sanathkr Aug 5, 2019
45a6841
Fix Flake8
jfuss Aug 6, 2019
360d90a
Revert "fix: Respect zipped symlinks (#1140)"
jfuss Aug 7, 2019
65b6f53
Merge pull request #1315 from awslabs/candidate/release/20
awood45 Aug 7, 2019
2368c33
feat(start-api): CloudFormation AWS::ApiGateway::RestApi support (#1238)
viksrivat Jul 23, 2019
6e083a9
feat(start-api): CloudFormation AWS::ApiGateway::Stage Support (#1239)
viksrivat Jul 26, 2019
2d95111
warning: deprecation warning message - Python 2.7 (#1306)
sriram-mv Aug 7, 2019
78d4f82
Fix unit tests so they pass on appveyor
jfuss Aug 7, 2019
cf45ab8
Merge branch 'develop' into start-api/cfn
jfuss Aug 8, 2019
421d15e
Merge pull request #1320 from awslabs/start-api/cfn
jfuss Aug 8, 2019
0c6c50e
design: CloudFormation ApiGateway support design (#1234)
viksrivat Aug 9, 2019
2f96a9a
desgin: Intrinsics Design Doc (#1260)
viksrivat Aug 9, 2019
5e15771
feat(init): Update all READMEs to match new NodeJS README (#1321)
jfuss Aug 9, 2019
852ea84
docs: Refresh Init READMEs (#1308)
jfuss Aug 9, 2019
ca93e83
feat: Intrinsics support (#1261)
viksrivat Aug 9, 2019
b1b47d8
chore: Update aws-sam-translator Dependency (#1330)
awood45 Aug 10, 2019
079e7a9
fix(start-api): Allow Integer body in Lambda response (#1263)
viksrivat Aug 12, 2019
7790659
feat: CloudFormation AWS::ApiGateway::Methods and AWS::ApiGateway::Re…
viksrivat Aug 12, 2019
ec19bfb
feat(start-api): Cors Support (#1242)
viksrivat Aug 12, 2019
71e5239
chore: Migrate from Travis to AppVeyor for Linux builds (#1334)
sanathkr Aug 14, 2019
c09f470
feat: Resolve Intrinsics Functions in template (#1333)
viksrivat Aug 14, 2019
156fba8
feat(invoke): Fetch amazon/lambda-build-node10.x build image (#1335)
jfuss Aug 14, 2019
40468a7
chore: Version bump for 0.20.0 release (#1341)
jfuss Aug 15, 2019
9c0cfd3
bugfix/integrate_intrinsics (#1343)
viksrivat Aug 16, 2019
6193f59
Add OSError Handling to GlobalConfig
awood45 Aug 20, 2019
8ace1bf
Add Unit Test for OSError Case
awood45 Aug 20, 2019
d0ae114
Merge pull request #1348 from awood45/fix-1313
awood45 Aug 20, 2019
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
50 changes: 0 additions & 50 deletions .travis.yml

This file was deleted.

33 changes: 33 additions & 0 deletions DEVELOPMENT_GUIDE.md
Original file line number Diff line number Diff line change
Expand Up @@ -154,6 +154,39 @@ conventions are best practices that we have learnt over time.
- Do not catch the broader `Exception`, unless you have a really
strong reason to do. You must explain the reason in great detail in
comments.


Testing
-------

We need thorough test coverage to ensure the code change works today,
and continues to work in future. When you make a code change, use the
following framework to decide the kinds of tests to write:

- When you adds/removed/modifies code paths (aka branches/arcs),
write **unit tests** with goal of making sure the flow works. Focus
on verifying the flow and use mocks to isolate from as many
external dependencies as you can. "External dependencies"
includes system calls, libraries, other classes/methods you wrote
but logically outside of the system-under-test.

> Aim to test with complete isolation

- When your code uses external dependencies, write **functional tests**
to verify some flows by including as many external dependencies as
possible. Focus on verifying the flows that directly use the dependencies.

> Aim to test one or more logically related components. Includes docker,
file system, API server, but might still mock some things like AWS API
calls.

- When your code adds/removes/modifies a customer facing behavior,
write **integration tests**. Focus on verifying the customer experience
works as expected.

> Aim to test how a customer will use the feature/command. Includes
calling AWS APIs, spinning up Docker containers, mutating files etc.


Design Document
---------------
Expand Down
2 changes: 1 addition & 1 deletion LICENSE
Original file line number Diff line number Diff line change
Expand Up @@ -187,7 +187,7 @@
same "printed page" as the copyright notice for easier
identification within third-party archives.

Copyright [yyyy] [name of copyright owner]
Copyright 2017 Amazon.com, Inc. or its affiliates. All Rights Reserved.

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
Expand Down
69 changes: 45 additions & 24 deletions appveyor.yml
Original file line number Diff line number Diff line change
@@ -1,48 +1,69 @@
version: 1.0.{build}
image: Visual Studio 2017
build: off
image:
- Ubuntu
- Visual Studio 2017

environment:
AWS_DEFAULT_REGION: us-east-1
SAM_CLI_DEV: 1

matrix:

- PYTHON_HOME: "C:\\Python27-x64"
PYTHON_VERSION: '2.7'
PYTHON_VERSION: '2.7.16'
PYTHON_ARCH: '32'

- PYTHON_HOME: "C:\\Python36-x64"
PYTHON_VERSION: '3.6'
PYTHON_VERSION: '3.6.8'
PYTHON_ARCH: '64'

# Testing on both 32bit and 64bit Windows only for Latest Python version,
# because MSIs installers use Latest Python version
- PYTHON_HOME: "C:\\Python37"
PYTHON_VERSION: '3.7'
PYTHON_ARCH: '32'

- PYTHON_HOME: "C:\\Python37-x64"
PYTHON_VERSION: '3.7'
PYTHON_VERSION: '3.7.4'
PYTHON_ARCH: '64'

install:
for:
-
matrix:
only:
- image: Visual Studio 2017

install:
# Upgrade setuptools, wheel and virtualenv
- "python -m pip install --upgrade setuptools wheel virtualenv"

# Create new virtual environment and activate it
- "rm -rf venv"
- "python -m virtualenv venv"
- "venv/Scripts/activate"

-
matrix:
only:
- image: Ubuntu
install:
- sh: "JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64"
- sh: "PATH=$JAVA_HOME/bin:$PATH"
- sh: "source ${HOME}/venv${PYTHON_VERSION}/bin/activate"
- sh: "rvm use 2.5"

# Upgrade setuptools, wheel and virtualenv
- "python -m pip install --upgrade setuptools wheel virtualenv"
# Install latest gradle
- sh: "sudo apt-get -y remove gradle"
- sh: "wget https://services.gradle.org/distributions/gradle-5.5-bin.zip -P /tmp"
- sh: "sudo unzip -d /opt/gradle /tmp/gradle-*.zip"
- sh: "PATH=/opt/gradle/gradle-5.5/bin:$PATH"

# Create new virtual environment and activate it
- "rm -rf venv"
- "python -m virtualenv venv"
- "venv\\Scripts\\activate"
- "python -c \"import sys; print(sys.executable)\""
build_script:
- "python -c \"import sys; print(sys.executable)\""

# Actually install SAM CLI's dependencies
- "pip install -e \".[dev]\""
# Actually install SAM CLI's dependencies
- "pip install -e \".[dev]\""

test_script:
- "pytest --cov samcli --cov-report term-missing --cov-fail-under 95 tests\\unit"
- "pytest --cov samcli --cov-report term-missing --cov-fail-under 95 tests/unit"
- "flake8 samcli"
- "flake8 tests\\unit tests\\integration"
- "flake8 tests/unit tests/integration"
- "pylint --rcfile .pylintrc samcli"

# Runs only in Linux
- sh: "pytest -vv tests/integration"

Loading