Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add support for PHP 7.2 runtime #3736

Merged
merged 4 commits into from
Jul 3, 2018
Merged

Add support for PHP 7.2 runtime #3736

merged 4 commits into from
Jul 3, 2018

Conversation

akrabat
Copy link
Member

@akrabat akrabat commented Jun 8, 2018

Description

This PR adds PHP 7.2 as a new kind and sets the default PHP runtime to version 7.2.

I have not provided runtime tests here as they are in the runtime-php repository and they are being removed anyway via #3467. I'm not sure which additional tests are needed in this repo.

Related issue and scope

apache/openwhisk-runtime-php#28 needs to be merged and the relevant Docker containers built and uploaded to the Docker Hub first.

My changes affect the following components

  • API
  • Controller
  • Message Bus (e.g., Kafka)
  • Loadbalancer
  • Invoker
  • Intrinsic actions (e.g., sequences, conductors)
  • Data stores (e.g., CouchDB)
  • Tests
  • Deployment
  • CLI
  • General tooling
  • Documentation

Types of changes

  • Bug fix (generally a non-breaking change which closes an issue).
  • Enhancement or new feature (adds new functionality).
  • Breaking change (a bug fix or enhancement which changes existing behavior).

Checklist:

  • I signed an Apache CLA.
  • I reviewed the style guides and followed the recommendations (Travis CI will check :).
  • I added tests to cover my changes.
  • My changes require further changes to the documentation.
  • I updated the documentation where necessary.

# Licensed to the Apache Software Foundation (ASF) under one or more contributor
# license agreements; and to You under the Apache License, Version 2.0.

FROM openwhisk/action-php-v7.2:latest
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

#3680 and #3745 will eschew this.

@@ -0,0 +1,19 @@
/*
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

#3680 and #3745 will eschew this.

"default": true,
"deprecated": false,
"image": {
"name": "action-php-v7.2"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

due to #3680, this should specify the prefix as openwhisk and the tag as latest.

settings.gradle Outdated
@@ -28,6 +28,7 @@ include 'actionRuntimes:swift3.1.1Action'
include 'actionRuntimes:swift4.1Action'
include 'actionRuntimes:javaAction'
include 'actionRuntimes:php7.1Action'
include 'actionRuntimes:php7.2Action'
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

#3680 and #3745 will eschew this.

tools/build/redo Outdated
@@ -309,6 +309,11 @@ Components = [
yaml = False,
gradle = 'actionRuntimes:php7.1Action'),

makeComponent('action-php-v7.2',
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

#3680 and #3745 will eschew this.

rabbah
rabbah previously requested changes Jun 21, 2018
Copy link
Member

@rabbah rabbah left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

both noted PRs are now committed eschewing several files in this PR.

@csantanapr
Copy link
Member

csantanapr commented Jun 23, 2018

@akrabat
Can you take another look.
To add PHP 7.2 new kind only need 3 things:

  1. Update ansible/files/runtimes.json with the new entry and make it default, make 7.1 default false
  2. Update the docs with the new php 7.2 info in actions and reference.
  3. Update the swagger docs kinds

@akrabat
Copy link
Member Author

akrabat commented Jun 23, 2018

What do I need to do in redo?

Also, do I need to update runtimes.manifest in whisk.properties?

@akrabat
Copy link
Member Author

akrabat commented Jun 23, 2018

Rebased against latest master.

@csantanapr
Copy link
Member

My bad remove redo changes

@csantanapr
Copy link
Member

whisk.properties is generated file
“wskdev props” will run ansible properties.yml playbook

@rabbah
Copy link
Member

rabbah commented Jun 23, 2018

Wdyt about giving each of the runtimes their own md file?

@akrabat
Copy link
Member Author

akrabat commented Jun 23, 2018

Wdyt about giving each of the runtimes their own md file?

I think reorganising actions.md & reference.md to an md per action makes a lot of sense.

@csantanapr
Copy link
Member

@rabbah @akrabat
I think we need to add a system basic tests for the new kind
I should assume that php 7.2 kind might not be installed so we don’t brake deployments pipeline that have not picked the new kind yet.

@rabbah I think you mentioned you wanted to refactor the basic and Unicode tests to run based on what the runtime manifest States is deployed ?

@csantanapr
Copy link
Member

csantanapr commented Jun 23, 2018

Yeah braking the docs per kind runtime is on my personal TODOs
But help is welcome 😸

There might be duplication, but I think is ok for us(ie maintainers) to deal with the duplication effort (or automation) and end users to benefit of taking a single md file from top to bottom and only deal with the programming language they are dealing and not assume they read the JavaScript examples.
Also another item in TODOs
For each kind to have a section on how to extend a runtime when they deal with large zips or they want to have one runtime with the dependencies or libraries across all the functions in an app

@codecov-io
Copy link

codecov-io commented Jun 23, 2018

Codecov Report

Merging #3736 into master will decrease coverage by 3.47%.
The diff coverage is n/a.

Impacted file tree graph

@@            Coverage Diff             @@
##           master    #3736      +/-   ##
==========================================
- Coverage   74.76%   71.28%   -3.48%     
==========================================
  Files         137      139       +2     
  Lines        6440     6767     +327     
  Branches      401      426      +25     
==========================================
+ Hits         4815     4824       +9     
- Misses       1625     1943     +318
Impacted Files Coverage Δ
...c/main/scala/whisk/core/database/UserCommand.scala 61.11% <0%> (-36.67%) ⬇️
...rpool/logging/DockerToActivationFileLogStore.scala 46.77% <0%> (-31.61%) ⬇️
...a/whisk/core/loadBalancer/InvokerSupervision.scala 59.3% <0%> (-22.96%) ⬇️
...la/src/main/scala/whisk/core/entity/Identity.scala 73.52% <0%> (-19.07%) ⬇️
...cala/whisk/core/containerpool/ContainerProxy.scala 77.77% <0%> (-14.23%) ⬇️
...e/loadBalancer/ShardingContainerPoolBalancer.scala 18.96% <0%> (-13.58%) ⬇️
...ain/scala/whisk/core/containerpool/HttpUtils.scala 42.62% <0%> (-8.36%) ⬇️
...rc/main/scala/whisk/core/controller/Triggers.scala 77.62% <0%> (-3.4%) ⬇️
...on/scala/src/main/scala/whisk/common/Logging.scala 86% <0%> (-1.78%) ⬇️
...whisk/core/entity/BasicAuthenticationAuthKey.scala 28.57% <0%> (ø)
... and 1 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update b1476b9...6b9d0f8. Read the comment docs.

@akrabat
Copy link
Member Author

akrabat commented Jul 1, 2018

Updated and rebased for the updated docs structure.

@akrabat akrabat closed this Jul 2, 2018
@akrabat akrabat reopened this Jul 2, 2018
@csantanapr
Copy link
Member

csantanapr commented Jul 3, 2018

PG1 3094 ⌛️

@@ -1499,6 +1499,8 @@
"nodejs:8",
"python:2",
"python:3",
"php:7.1",
"php:7.2",
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

we'll need to keep this in sync with the runtime manifest in general.

@csantanapr
Copy link
Member

Playground1/3096/ 🔵

@@ -1499,6 +1499,8 @@
"nodejs:8",
"python:2",
"python:3",
"php:7.1",
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I forgot about swagger 👍

@csantanapr csantanapr dismissed rabbah’s stale review July 3, 2018 17:11

now PR in sync

@csantanapr csantanapr merged commit ebf42b2 into apache:master Jul 3, 2018
BillZong pushed a commit to BillZong/openwhisk that referenced this pull request Nov 18, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants