* Adding node 20 support for bullseye and bookworm
* Added node 20 dynamic install test
* Added tests for node 20
* Updated node platform bin yaml
* Fixed empty sas token issue
* Fixed run image base pipeline failure
* Fixed sas token issue
* Fixed sas token issue
* Added runtime tag
* Update runtime tag
* Update to LTS version
* Fixed integration test and pipeline bugs
* Updated runtime tag
* Updated for future debian bookworm
* Fixed typo
* Fixed typo
* Publish runtime images with specific tags and multiple Debian flavors
* Update constants for PHP(-FPM) base images
* Update runtime image tests to reflect new pattern
* Fix failing 'oryx dockerfile' tests
* Fix test error with new Python version mapping
* Resolve review feedback, fix tagging issue causing build failure
* Fix failing Python tests due to wrong runtime image used
* Temporary commit to get the CLA bot to run
* add end to end test for dotnet 8, and comment out nuxt js stretch tests for now
* buster to bookworm for dotnet 8 test category
* uncomment
* fixed remaining buster reference to bookworm
* add end to end test for dotnet 8, and comment out nuxt js stretch tests for now
* fixed nuxt tests to run the correct sample app, and added dotnet installation for security check (#2122)
* setting up the private env
* private environment for build
* private account setup for buildBuildImages and buildRunTimeImages script
* copy sdks from prod to private staging account
* adding secrets to validation pipeline
* Authenticate with Azure DevOps
* env variable path bug fix
* debian package fix for nodejs
* fixed the local build issue related to the stretch package
* merged with main
* addressed PR change
* make the token hideen in local build
* updated all packages and resolved errors
* Revert "updated all packages and resolved errors"
This reverts commit ee12952289.
* updated all packages besides fxanalyzers
* resolve all build warnings
* fixing linting - temp commit
* fix all linting errors
* downgraded microsoft packages to ones that support version 3.1
* checked all dependencies for date, and uninstalled deprecated ones
* shared code generator now builds
* use versions for dotnet 3.1
* fixed bash scripts properties
* minor updates and removal of deprecated project
* re-ignored some tests that do not pass
* add valid connection string
* update connection string tests
* reverted ruleset
* Fix tests failing after change to default version
* Update failing test
* Fix or skip failing tests after default version update
Co-authored-by: Cormac McCarthy <corm@microsoft.com>
* add some exception handling and helpful error logging to failed http requests
* add simple test
* addressed pr comments: updated error messages and use environment.newline
* Add support for python latest versions
* generated constants
* Updated runtime tag
* generated constants
* Updated unit tests
* updated runtime tag
* updated constants
* Removed extra space character
* Added new python versions to all os types
* Updated tests
* Updated tests
* convert go fully to go.mod
* removed gopkg files, adn fully built all go packages with dependencies
* fixed tests to run on packages
* cleaned up scripts
* removed built exes
* make mod files consistent
* allow execution of the test packages script
* Fixed bug to download tarballs from storage account url supplied from pipeline
* Fix bug to download sdks from storage account url supplied from pipeline
* Add AddDefaultTestEnvironmentVariables
* Replcae SetEnvironmentVariable by AddDefaultTestEnvironmentVariables
* Commented out test for python 3.11
* Add support for python latest versions
* generated constants
* Updated runtime tag
* generated constants
* Updated unit tests
* updated runtime tag
* updated constants
* Removed extra space character
* Added new python versions to all os types
* Updated tests
* Updated tests
* Fixed bug to download tarballs from storage account url supplied from pipeline
* Fix bug to download sdks from storage account url supplied from pipeline
* fixed tests to run on packages
* cleaned up scripts
* Add AddDefaultTestEnvironmentVariables
* Replcae SetEnvironmentVariable by AddDefaultTestEnvironmentVariables
* Commented out test for python 3.11
* Add dotnet 7 to stretch / older images (#1667)
* add dotnet 7 to stretch / legacy images
* generated constants and supported versions, and updated the final stretch version for dotnet 7
* remove .NET7 condition on bindport2 (#1670)
* Pauld/switch go packages to go mod (#1671)
* convert go fully to go.mod
* removed gopkg files, adn fully built all go packages with dependencies
* fixed tests to run on packages
* cleaned up scripts
* removed built exes
* make mod files consistent
* allow execution of the test packages script
* added readme for updating and testing go dependencies
* Add support for python latest versions
* generated constants
* Updated runtime tag
* generated constants
* Updated unit tests
* updated runtime tag
* updated constants
* Removed extra space character
* Added new python versions to all os types
* Updated tests
* Updated tests
* Fixed bug to download tarballs from storage account url supplied from pipeline
* Fix bug to download sdks from storage account url supplied from pipeline
* fixed tests to run on packages
* cleaned up scripts
* Add AddDefaultTestEnvironmentVariables
* Replcae SetEnvironmentVariable by AddDefaultTestEnvironmentVariables
* Commented out test for python 3.11
* also add execution permissions for the restore packages script
* reordered testing shell script builder methods
* Updated error message
* Fixed astroid version conflict
* Fixed version conflict with astroid 2.8.0
* Fixed astroid 2.8.0 version conflict
* Addressed PR comments and resolved dependency conflict
* Resolved pyflakes version conflict
* Enabled test case to use default test env variables
* Resolved dependency conflicts
* Updated runtime tag
Co-authored-by: Paul Dorsch <pauldorsch@microsoft.com>
Co-authored-by: Paul Dorsch <107068277+pauld-msft@users.noreply.github.com>
Co-authored-by: waliMSFT <105239794+waliMSFT@users.noreply.github.com>
* updated constants to unstage the runtime image
* updated .net 7 constants, and added a .net 7 web app for testing
* more test updates
* updated tests, and generate constants to respect using empty lists
* finished updating tests for .NET 7
* removed skip from sanity check tests
* re-add fact to run storage account sanity checks
* Lock version of viper to 1.13.0
* fix base image logic
* Changed viper version to 1.10.0
* added go mod files to fix dependencies for go
* whitespace
* updated dotnetcore runtime base tag and generated constants
* minor mistakes and typo
Co-authored-by: snehapar9 <snehapar@microsoft.com>
* Split integration tests by platform version and build image
* Reduce number of runners required for integration tests
* Remove unused parameter from integration test templates
* Fix failing tests
* Fix other failing CLI buster test
* added support for ostype in image tag
* fixed dotnet, node, and ruby tests and fixed ruby's generateDockerfiles file
* added dynamic image versions to the tests
* updated build images to include debian flavor
* updated build images to include ostype in their image tag, and fixed a few tests to use the new tag
* starting a constants file for images to test on
* moved constants to image test helper, and updated tests to use github actions stretch constant
* updating tests to use constants so that we can switch the tag structure down the line with minimal code changes
* cli images use constant for testing
* fixing building images for new names
* fixed latest image for tests
* fix some more references to latest and lts versions
* updated test tag
* updated tests to respect the os type and os version combo
* fix building build images
* fix pulling and tagging for integration tests
* fix latest build
* updated new php-fpm tag text
* bug fixes and remaining hardcode cleanup
* resolve vso focal issue
* fix lts buster dockerfile
* lingering cli hardcode
* final tagging fixes and self review
* replace 'ubuntu-vso' with 'vso-ubuntu'
* pr feedback: renaming testing constants and resolving hardcoded buster in build images script
* tag latest image so that it is still accessible with the 'latest' tag
* made full tests consistent
* fixed remaining merge conflict
* update to gitignore for php
* update to gitignore for php attempt 2
* removed bullseye.Dockerfiles from git cache and reverted .gitignore
* added missing node 18 and python 3.11 to runtime image test helper
* add ability to pass in sdk base url as build arg
* parameterize storage account that platform binaries job uploads to
* added environment variable to control the storage account we use for testing
* update runtime and build image building so that it respects the passed in sdk storage account
* add some more parameterization to pipelines to allow for configurable storage accounts
* validation pipeline fix
* fix validation
* pass in parameter as variable
* add appsvc constant
* pass in parameters correctly
* make integration test use testing storage account, and add some versions that are missing
* allow platform binaries to be configured for different storage accounts
* add env var to integration testing
* removed added versions to build
* pr feedback: specify storage account name, fix some missing parameters, better logs
* make a dotnetcore 3.1 test use the testing storage account to pull SDKs
* added final stretch versions to mark end of uploading stretch sdks
* attempt to fix tests
* fix lts versions dockerfile
* saved file to fix final test
* pr feedback: renamed netcore31 runtime and fixed test to specific version
* Upgrade golang to 1.19 and migrate to bullseye
* Generated Golang19Version
* Removed echo
* Made modifications to build full-bullseye image
* Modified full.Dockerfile to add buster
* Added tests for golang 1.18 and 1.19
* Replaced hardcoded build image name
* Modified test to handle full, full-buster,full-bullseye
* Added 6.0.8 sdks and runtime versions
* Added constants for 6.0.8 sdks and runtime
* Added sdks and runtime for 3.1.28
* Added constatns for dotnet 3.1.28
* Added runtime tag in constants.yaml
* Added Paul's change
* Updated runtime tag
* Added sdk versions for 3.1.28 and 6.0.8 for all debian flavors
* Updated runtime tag in constants.yaml
* Generated constants
* Modified test to use dev storage account for dynamic installation
* Modified unit test
* Added 6.0.8 sdks and runtime versions
* Added constants for 6.0.8 sdks and runtime
* Added sdks and runtime for 3.1.28
* Added constatns for dotnet 3.1.28
* Added runtime tag in constants.yaml
* Updated runtime tag
* Added sdk versions for 3.1.28 and 6.0.8 for all debian flavors
* Updated runtime tag in constants.yaml
* Generated constants
* Modified test to use dev storage account for dynamic installation
* Modified unit test
* Modified unit test to remove whitespace
* Updated runtime tag in constants.yaml
* Added dotnet 6.0.400 sdk to bullseye\versionsTobuild.txt
* Updated runtime tag
* Modified buildscript to pull sdks from dev storage account
* Deleted stretch/versionsToBuild.txt
* Added versionsToBuild.txt back - without dotnet 6.0.8 sdk
* run script changes
* testing
* changes
* test for run changes
* Test for the run.sh task
* changes
* run.sh changes
* addressed PR commends
* run command integration test
* merged with main branch
* run command changes
* address pr changes
* customized run command for Node, PhP
* python run command change
* run command changes
* addressed PR changes
* bug fix
* save point: splitting up versions to build by ostype
* restructured and modified the platforms scripts and updated the shared code generator to account for the new versions
* updated constants to include ostype change and newer python version
* added support for new file structure to the python dockerfiles and publishing from dev to prod sdks
* save point, starting to enrich all storage items with version number, and modifying tests for new logic
* clean up platforms shell scripts
* finish modifying scripts to add version to the metadata, regardless of OSType
* beginning to update cli to support pulling only relevant sdks
* added constants that relate to the different debian flavors we may see
* save point, added to constants yaml file to start adding support for pulling debian flavor sdks
* added debian flavor option to the build command, and starting to update tests to be compatible
* renamed the vso focal directories to focal scm, and fixed the sdk storage tests
* added a number of comments for the second PR and some tests to cover dotnet and node pulling the correct images
* added php and python tests for installing based on the available sdks
* updated sdk storage provider and platform installer to have bullseye images use buster sdks, since there are currently no bullseye sdks
* self reviewed pr: added comments, fixed some bugs and typos, and updated the pipeline scripts to correctly handle stretch images
* added default sdk storage metadata to be used for determining versions available
* added legacy versions to stretch version directories, so that the supported md file will contain the best information
* updated shared code generator to allow for the legacy versions text files
* update platform installation scripts to enrich the sdks with an updated version metadata name and the OS type
* some fixes for generating the platform binaries locally, and a fix for generating the maven binaries
* added legacy version metadata to storage constants
* updated the metadata names so that they exist in constants file and can be used throughout oryx
* saved leftover merge conflict file
* removed old default and versions to build files
* updated php fpm configuration to be in the constants.yaml file so that we support the generate constants script
* updated the debian flavor arg in the python template
* fix failing githubaction and vso focal tests
* saved file and added comment to version comparer
* fixed some spacing and added comments and a todo
* updated dotnet runtime version metadata to be backwards compatible
* use version info from elsewhere in oryx to streamline version comparing
* pr feedback, using constants during platform installation and sdk storage provider, and trimming whitespace from version files
* pr feedback: use constants for file names and renamed the new sdk versions metadata to be consistent
* limit bullseye sdks we push to storage to the ones that we know will be used by bullseye
* regenerated constants with updated bullseye versions, and removed extra logic in VersionInfo
* include all defaultVersion.txt files in the upload
* fixed spacing for vsts pipeline
* updated the maven base url to point to a source that contains legacy versions
* fixed php version sha
* use correct get pip url when version 3.6 and stretch
* add bullseye maven job
* added support to still build php 7.2 binaries
* allow enough time for php to generate and upload all sdks
* give php jobs 24 hours to run, as they have not been able to generate all versions in the given time
* updated python sdk generation to use the correct stretch buildpack for non-3.10 or greater versions
* updated logic so that python version 3.10 and above will have the correct prerequisites built
* updated common script to ignore whitespace differently
* readded deleted line and ran generate constants
* Pauld/1559705 PR2 cleanup and utilize bullseye images (#1497)
* initial pass at adding support for bullseye by resolving the PR2 todos
* allow build
* added test for php default versions
* added dotnetcore and python tests for invalid versions
* added more tests for correct pulling functionality
* support for finding default version with no debain flavor
* add working python versions
* whitespace
* added comments explaining the supported version logic, and fixed a statement to ensure that stretch images check for correct dotnet metadata
* add preview 7
* addressed PR comments by deleting un-needed method and adding comment
* updated storage account tests to view entire versions file, not stopping at the very first empty line
* trim lines in storage account tests to account for only whitespace lines
* add some configuration to the startupscriptgenerator, and a test base
* added to startupscript generator to configure fpm before application run, and cooresponding tests
* added documentation surrounding the fpm configuration options, and configured the tests to include all of the fpm config options. Also lowered the amount of time waiting before checking for application readiness
* removed tests from sample php app
* removed the bullseye php dockerfiles
* bumped delaybetween retries back to 100
* give the php failures more time to pull the images before exiting the container
* condensed the php test invocations to a single method for sucess and failures, and added async to the naming
* remove php integration collection and update nightly tests to check more frequently for container liveliness
* updated docker cli to not duplicate code, and increased delay between tries in order to increase the max amount of time we take to wait for container startup
* revert nginx version
* update tags
* bumped the amount of time the container has to pull the image and fail to run the startup script, as it can occaisonally take a long time to pull and run
* address pr comments: styling and using isnullorempty for string comparison
* pr feedback: explained waiting for the container to start up and bumped the delay in between retrieving the host port to 10 seconds
Co-authored-by: Stella Qian <zixuan.qian@microsoft.com>