Skip to content

Commit 9aef2c1

Browse files
committed
Merge branch 'release/2.1.0'
2 parents 240da0a + 9284408 commit 9aef2c1

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

61 files changed

+3859
-540
lines changed

.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,3 +6,5 @@ target/
66
.settings/
77
.coverage
88
pnda-build/
9+
.virtualenv
10+
venv

CHANGELOG.md

Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,10 +3,56 @@ All notable changes to this project will be documented in this file.
33

44
## [Unreleased]
55

6+
## [2.0.0] 2018-08-28
7+
### Added
8+
- PNDA-4560: Add authorization framework and authorize all API calls
9+
- PNDA-4562: Supply user.name when calling package repository
10+
11+
### Changed
12+
- PNDA-4405: Require user and package fields in create application API
13+
- PNDA-4389: Reject packages containing upstart.conf files
14+
- PNDA-4525: Deprecate Ubuntu 14.04
15+
- PNDA-4511: Use a config property to set which spark-submit command to call for spark streaming components
16+
- PNDA-4398: Support Spark 2 for Oozie jobs
17+
- PNDA-4546: Accept username as a URL parameter instead of in the request body and apply basic authorisation so only the user who created an application (or a special admin user defined in the dm-config file) can modify it
18+
- PNDA-4613: Rename user parameter for deployment manager API from user to user.name to match the default knox behaviour
19+
- PNDA-4560: Remove admin_user setting from unit tests
20+
- PNDA-4500: Redesigned application detailed summary and added flink application detailed summary
21+
22+
### Fixed
23+
- PNDA-4218: Fix application deletion when app name is an HDFS username
24+
- PNDA-4012: Add missing application type in application detailed summary
25+
- PNDA-4009: Improve application status naming in application detailed summary
26+
- PNDA-4237: Failure details provided in application summary info if an application fails to submit to YARN
27+
- PNDA-4796: Flink-stop added to stop the flink applications properly
28+
29+
## [1.0.0] 2018-02-10
30+
### Added:
31+
- PNDA-439: Support deploying/running app as specific user
32+
- PNDA-2834: Better and more detailed application status reporting
33+
- PNDA-3654: Support for spark2 streaming applications
34+
- PNDA-4007: Ability to specify default queue configuration for oozie components
35+
36+
### Changed
37+
- PNDA-3555: Place files in HDFS for packages and applications under `/pnda/system/deployment-manager/<packages|applications>`.
38+
- PNDA-3601: Disable emailtext in Jenkins file and replace it with notifier stage and job
39+
40+
### Fixed
41+
- PNDA-3354: Fix error causing exception to appear in log when trying to deploy packages that do not exist
42+
- PNDA-2282: Improved reporting in error scenarios
43+
- PNDA-3613: Deployment manager tests require sudo to run but should not
44+
- PNDA-4056: Automatically sync environment descriptor
45+
646
## [0.5.0] 2017-11-24
747
### Added:
848
- PNDA-3330: Change to use a default application user instead of the hdfs user.
949
- PNDA-2445: Support for Hortonworks HDP
50+
- PNDA-439: Application create API requires a user to run the application as.
51+
- PNDA-3345: Provide the app_packages HDFS location (from Pillar) to applications deployed with DM
52+
- PNDA-3528: Add default queue placement for oozie jobs.
53+
54+
### Changed
55+
- PNDA-3486: Place files in HDFS for components under `/user/deployment-manager/applications/<user>/<application>/<component>` to avoid potential clashes using the existing path of `/user/<application>`.
1056

1157
## [0.4.0] 2017-05-23
1258
### Added

Dockerfile

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
FROM centos:7.6.1810
2+
3+
RUN yum install -y epel-release
4+
RUN yum install -y python36-devel python36-pip cyrus-sasl-devel cyrus-sasl-gssapi cyrus-sasl-plain libffi-devel openssl-devel gcc gcc-c++
5+
6+
COPY api/src/main/resources /deployment-manager/
7+
8+
WORKDIR /deployment-manager
9+
10+
RUN pip3 install -r requirements.txt
11+
12+
# GIT http server to serve notebooks to jupyterhub
13+
RUN yum install -y git nginx fcgiwrap && \
14+
git config --global user.email "[email protected]" && \
15+
git config --global user.name "pnda" && \
16+
mkdir -p /data/git-repos/ && \
17+
mkdir -p /data/stage/
18+
COPY docker/nginx.conf /etc/nginx/nginx.conf
19+
COPY docker/entrypoint.sh /entrypoint.sh
20+
# PNDA platform users must transition from Linux SO users to cloud-native. For now we add a pnda user to container images.
21+
RUN useradd pnda
22+
23+
ENTRYPOINT "/entrypoint.sh"
24+

Jenkinsfile

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,11 +19,11 @@ node {
1919
stage 'Deploy'
2020
build job: 'deploy', parameters: [[$class: 'StringParameterValue', name: 'artifacts_path', value: "${workspace}/pnda-build"]]
2121

22-
emailext attachLog: true, body: "Build succeeded (see ${env.BUILD_URL})", subject: "[JENKINS] ${env.JOB_NAME} succeeded", to: "${env.EMAIL_RECIPIENTS}"
23-
22+
stage 'Notifier'
23+
build job: 'notifier', parameters: [[$class: 'StringParameterValue', name: 'message', value: "${env.JOB_NAME} succeeded: see [Jenkins job ${env.BUILD_ID}](${env.BUILD_URL})"]]
2424
}
2525
catch(error) {
26-
emailext attachLog: true, body: "Build failed (see ${env.BUILD_URL})", subject: "[JENKINS] ${env.JOB_NAME} failed", to: "${env.EMAIL_RECIPIENTS}"
26+
build job: 'notifier', parameters: [[$class: 'StringParameterValue', name: 'message', value: "${env.JOB_NAME} failed: see [Jenkins job ${env.BUILD_ID}](${env.BUILD_URL})"]]
2727
currentBuild.result = "FAILED"
2828
throw error
2929
}

Makefile

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
NAME=platform-deployment-manager
2+
VERSION=release5.0
3+
REGISTRY=pnda
4+
5+
build: ## Build the docker image
6+
docker build -t "$(NAME):$(VERSION)" -f Dockerfile .
7+
8+
upload: ## Upload image to registry
9+
docker tag "$(NAME):$(VERSION)" "$(REGISTRY)/$(NAME):$(VERSION)"
10+
docker push "$(REGISTRY)/$(NAME):$(VERSION)"
11+
12+
help: ## This help
13+
@awk 'BEGIN {FS = ":.*?## "} /^[a-zA-Z_-]+:.*?## / {printf "\033[36m%-20s\033[0m %s\n", $$1, $$2}' $(MAKEFILE_LIST)
14+
15+
.PHONY: help
16+
.DEFAULT_GOAL := help

0 commit comments

Comments
 (0)