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
24 changes: 21 additions & 3 deletions azure_functions_worker_v2/azure_functions_worker_v2/loader.py
Original file line number Diff line number Diff line change
Expand Up @@ -71,7 +71,16 @@ def get_retry_settings(indexed_function):


def build_fixed_delay_retry(protos, retry, max_retry_count, retry_strategy):
delay_interval = protos.Duration(
try:
from google.protobuf.duration_pb2 import Duration
except ImportError:
raise ImportError(
"protobuf not found when trying to "
"import Duration."
"Sys Path: %s. "
"Sys Modules: %s. ",
sys.path, sys.modules)
delay_interval = Duration(
seconds=convert_to_seconds(retry.get(RetryPolicy.DELAY_INTERVAL.value))
)
return protos.RpcRetryOptions(
Expand All @@ -82,11 +91,20 @@ def build_fixed_delay_retry(protos, retry, max_retry_count, retry_strategy):


def build_variable_interval_retry(protos, retry, max_retry_count, retry_strategy):
minimum_interval = protos.Duration(
try:
from google.protobuf.duration_pb2 import Duration
except ImportError:
raise ImportError(
"protobuf not found when trying to "
"import Duration."
"Sys Path: %s. "
"Sys Modules: %s. ",
sys.path, sys.modules)
minimum_interval = Duration(
seconds=convert_to_seconds(
retry.get(RetryPolicy.MINIMUM_INTERVAL.value))
)
maximum_interval = protos.Duration(
maximum_interval = Duration(
seconds=convert_to_seconds(
retry.get(RetryPolicy.MAXIMUM_INTERVAL.value))
)
Expand Down
9 changes: 4 additions & 5 deletions eng/ci/official-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -74,11 +74,10 @@ extends:
dependsOn: BuildPythonWorker
jobs:
- template: /eng/templates/official/jobs/ci-docker-dedicated-tests.yml@self
# Skipping consumption tests till pipeline is fixed
# - stage: RunWorkerLinuxConsumptionTests
# dependsOn: BuildPythonWorker
# jobs:
# - template: /eng/templates/official/jobs/ci-lc-tests.yml@self
- stage: RunWorkerLinuxConsumptionTests
dependsOn: BuildPythonWorker
jobs:
- template: /eng/templates/official/jobs/ci-lc-tests.yml@self

# Python V2 Library Build and Test Stages
- stage: BuildV2Library
Expand Down
2 changes: 2 additions & 0 deletions eng/scripts/install-dependencies.sh
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
#!/bin/bash

python -m pip install --upgrade pip
python -m pip install -e azure_functions_worker_v2
python -m pip install -e azure_functions_worker_v1
python -m pip install -U azure-functions --pre
python -m pip install -U -e $2/[dev]

Expand Down
1 change: 1 addition & 0 deletions eng/templates/shared/github-release-note.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@ steps:
git tag -a "${{ parameters.PROJECT_DIRECTORY}}-$newWorkerVersion" -m "$newWorkerVersion"

# Push tag to remote
git push origin "${{ parameters.PROJECT_DIRECTORY}}-$newWorkerVersion"

displayName: 'Create and push release tag x.y.z'
- powershell: |
Expand Down
2 changes: 1 addition & 1 deletion workers/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -130,4 +130,4 @@ skip_glob = [
]

[tool.setuptools.dynamic]
version = {attr = "azure_functions_worker.version.VERSION"}
version = {attr = "azure_functions_worker.version.VERSION"}
8 changes: 8 additions & 0 deletions workers/tests/emulator_tests/test_blob_functions.py
Original file line number Diff line number Diff line change
@@ -1,11 +1,15 @@
# Copyright (c) Microsoft Corporation. All rights reserved.
# Licensed under the MIT License.
import sys
import time

from requests import JSONDecodeError
from tests.utils import testutils
from unittest.case import skipIf


@skipIf(sys.version_info.minor >= 13,
'Temporary skip for Python 3.13+')
class TestBlobFunctions(testutils.WebHostTestCase):

@classmethod
Expand Down Expand Up @@ -150,6 +154,8 @@ def test_blob_trigger_with_large_content(self):
raise


@skipIf(sys.version_info.minor >= 13,
'Temporary skip for Python 3.13+')
class TestBlobFunctionsStein(TestBlobFunctions):

@classmethod
Expand All @@ -158,6 +164,8 @@ def get_script_dir(cls):
'blob_functions_stein'


@skipIf(sys.version_info.minor >= 13,
'Temporary skip for Python 3.13+')
class TestBlobFunctionsSteinGeneric(TestBlobFunctions):

@classmethod
Expand Down
4 changes: 4 additions & 0 deletions workers/tests/endtoend/test_blueprint_functions.py
Original file line number Diff line number Diff line change
@@ -1,7 +1,9 @@
# Copyright (c) Microsoft Corporation. All rights reserved.
# Licensed under the MIT License.
import sys

from tests.utils import testutils
from unittest.case import skipIf


class TestFunctionInBluePrintOnly(testutils.WebHostTestCase):
Expand Down Expand Up @@ -29,6 +31,8 @@ def test_functions_in_both_blueprint_functionapp(self):
self.assertTrue(r.ok)


@skipIf(sys.version_info.minor >= 13,
"TODO: fix test setup. 3.13 fails indexing in init.")
class TestMultipleFunctionRegisters(testutils.WebHostTestCase):
@classmethod
def get_script_dir(cls):
Expand Down
Loading