├── .github └── pull_request_template.md ├── .gitignore ├── LICENSE ├── LICENSE_OF_DEPENDENCIES.md ├── README.md ├── faces-config.NavData ├── hopsworks-admin ├── faces-config.NavData ├── pom.xml └── src │ └── main │ ├── java │ └── io │ │ └── hops │ │ └── hopsworks │ │ └── admin │ │ ├── fsOps │ │ └── FileOperationsManagedBean.java │ │ ├── job │ │ └── JobAdministration.java │ │ ├── jupyter │ │ └── JupyterNotebooksBean.java │ │ ├── llap │ │ └── LlapBean.java │ │ ├── maintenance │ │ ├── ChangeEncryptionPasswordBean.java │ │ ├── ClientSessionState.java │ │ ├── HopsworksVariablesBean.java │ │ ├── MaintenanceBean.java │ │ ├── MessagesController.java │ │ ├── NodesBean.java │ │ └── Utils.java │ │ ├── ndb │ │ └── NdbBackupBean.java │ │ ├── project │ │ ├── ChangeListener.java │ │ ├── InodesMB.java │ │ ├── ProjectQuotas.java │ │ ├── ProjectTeamController.java │ │ ├── ProjectsManagementBean.java │ │ └── ValueChangeMB.java │ │ ├── security │ │ └── ua │ │ │ ├── Credentials.java │ │ │ ├── LoginBean.java │ │ │ ├── LoginFilter.java │ │ │ ├── PolicyDecisionPoint.java │ │ │ └── RoleEnforcementPoint.java │ │ ├── upload │ │ └── UploadServlet.java │ │ └── user │ │ ├── account │ │ ├── AccountVerification.java │ │ ├── RecoverySelector.java │ │ ├── ResetPassword.java │ │ └── UsernameValidator.java │ │ ├── administration │ │ └── UserAdministration.java │ │ └── profile │ │ ├── AdminProfileAdministration.java │ │ └── ProfileManager.java │ └── webapp │ ├── WEB-INF │ ├── beans.xml │ ├── faces-config.xml │ ├── glassfish-web.xml │ └── web.xml │ ├── bbc │ └── js │ │ ├── jquery-1.6.min.js │ │ ├── jquery-ui.min.js │ │ └── jquery.min.js │ ├── error.xhtml │ ├── expired.xhtml │ ├── login.xhtml │ ├── resources │ ├── css │ │ ├── main.css │ │ └── theme.css │ ├── images │ │ ├── ajax-loader.GIF │ │ ├── ajax-loader1.gif │ │ ├── ajaxloadingbar.gif │ │ ├── chmasterencpass.png │ │ ├── export │ │ │ └── csv.png │ │ ├── hops-black.png │ │ ├── jupyter.png │ │ ├── llap.png │ │ ├── manage_hosts.png │ │ ├── python_logo.png │ │ ├── refresh_variables.png │ │ ├── users │ │ │ ├── 2factorauth.png │ │ │ ├── android1.gif │ │ │ ├── android2.gif │ │ │ ├── avatar.png │ │ │ ├── backup.png │ │ │ ├── edit.png │ │ │ ├── elephant.png │ │ │ ├── hdfs-logo.jpg │ │ │ ├── iphone.png │ │ │ ├── lock.png │ │ │ ├── maintenance.png │ │ │ ├── mobileUser.png │ │ │ ├── monitor.png │ │ │ ├── projectManagement.png │ │ │ ├── spamUser.png │ │ │ ├── studyaudit.png │ │ │ ├── userAdmin.png │ │ │ ├── windows-qr.png │ │ │ ├── windows.jpg │ │ │ └── windows1.png │ │ └── views │ │ │ └── hadoop.png │ └── primefaces-bootstrap │ │ └── images │ │ ├── ui-icons_333333_256x240.png │ │ └── ui-icons_ffffff_256x240.png │ └── security │ ├── login_issue.xhtml │ ├── mobile_recovery.xhtml │ ├── password_changed.xhtml │ ├── password_sent.xhtml │ ├── profile_password_changed.xhtml │ ├── protected │ └── admin │ │ ├── addNewNodeDialog.xhtml │ │ ├── adminIndex.xhtml │ │ ├── admin_profile.xhtml │ │ ├── admintitleBar.xhtml │ │ ├── changeMasterEncPass.xhtml │ │ ├── condaCommands.xhtml │ │ ├── hostsManagement.xhtml │ │ ├── jobManagement.xhtml │ │ ├── jupyterNotebooks.xhtml │ │ ├── llapManagement.xhtml │ │ ├── maintenance.xhtml │ │ ├── ndbBackupFailed.xhtml │ │ ├── ndbBackups.xhtml │ │ ├── newUsers.xhtml │ │ ├── profile_password.xhtml │ │ ├── projectForceRemoveDialog.xhtml │ │ ├── projectsManagement.xhtml │ │ ├── refreshVariables.xhtml │ │ ├── spamUsers.xhtml │ │ └── userManagement.xhtml │ ├── qrcode.xhtml │ ├── reset.xhtml │ ├── reset_password.xhtml │ ├── sec_question.xhtml │ ├── sec_question_changed.xhtml │ ├── validate_account.xhtml │ └── validate_code.xhtml ├── hopsworks-api-v2 ├── pom.xml └── src │ └── main │ ├── java │ └── io │ │ └── hops │ │ └── hopsworks │ │ └── apiV2 │ │ ├── ApplicationConfig.java │ │ ├── ErrorResponse.java │ │ ├── currentUser │ │ ├── LimitedMemberView.java │ │ ├── UserProfileView.java │ │ └── UserResource.java │ │ ├── filter │ │ ├── AllowedProjectRoles.java │ │ ├── ApiV2FilterBase.java │ │ └── ProjectAuthFilter.java │ │ ├── mapper │ │ ├── AccessControlExceptionMapper.java │ │ ├── AppExceptionMapper.java │ │ ├── AuthExceptionMapper.java │ │ ├── ThrowableExceptionMapper.java │ │ └── TransactionExceptionMapper.java │ │ ├── projects │ │ ├── ActivityView.java │ │ ├── BlobsResource.java │ │ ├── CreateDatasetView.java │ │ ├── DatasetPath.java │ │ ├── DatasetView.java │ │ ├── DatasetsResource.java │ │ ├── LimitedProjectView.java │ │ ├── MemberView.java │ │ ├── MembersResource.java │ │ ├── PathValidator.java │ │ ├── ProjectView.java │ │ └── ProjectsResource.java │ │ └── users │ │ ├── UserView.java │ │ └── UsersResource.java │ └── webapp │ └── WEB-INF │ ├── glassfish-web.xml │ └── web.xml ├── hopsworks-api ├── pom.xml └── src │ └── main │ ├── java │ ├── com │ │ └── predic8 │ │ │ └── membrane │ │ │ └── servlet │ │ │ └── embedded │ │ │ ├── HopsRouter.java │ │ │ ├── HopsServletHandler.java │ │ │ ├── HopsTransport.java │ │ │ ├── MembraneServlet.java │ │ │ └── RStudioMembraneServlet.java │ └── io │ │ └── hops │ │ └── hopsworks │ │ ├── api │ │ ├── admin │ │ │ ├── CertificateMaterializerAdmin.java │ │ │ ├── HDFSUIProxyServlet.java │ │ │ ├── ProjectsAdmin.java │ │ │ ├── SystemAdminService.java │ │ │ ├── UsersAdmin.java │ │ │ ├── YarnUIProxyServlet.java │ │ │ ├── dto │ │ │ │ ├── MaterializerStateResponse.java │ │ │ │ ├── ProjectAdminInfoDTO.java │ │ │ │ ├── ProjectDeletionLog.java │ │ │ │ └── VariablesRequest.java │ │ │ └── llap │ │ │ │ ├── LlapAdmin.java │ │ │ │ └── LlapMonitorProxyServlet.java │ │ ├── agent │ │ │ ├── AgentResource.java │ │ │ └── HostHeartbeatTimeout.java │ │ ├── app │ │ │ └── ApplicationService.java │ │ ├── cluster │ │ │ ├── Monitor.java │ │ │ └── ServicesActionDTO.java │ │ ├── dela │ │ │ ├── DelaClusterProjectService.java │ │ │ ├── DelaClusterService.java │ │ │ ├── DelaProjectService.java │ │ │ ├── DelaService.java │ │ │ ├── RemoteDelaService.java │ │ │ ├── UserContentsSummaryJSON.java │ │ │ └── dto │ │ │ │ ├── BootstrapDTO.java │ │ │ │ ├── DelaClientDTO.java │ │ │ │ └── InodeIdDTO.java │ │ ├── elastic │ │ │ └── ElasticService.java │ │ ├── exception │ │ │ └── mapper │ │ │ │ ├── AccessControlExceptionMapper.java │ │ │ │ ├── AppExceptionMapper.java │ │ │ │ ├── AuthExceptionMapper.java │ │ │ │ ├── LoginExceptionMapper.java │ │ │ │ ├── ThrowableExceptionMapper.java │ │ │ │ └── TransactionExceptionMapper.java │ │ ├── filter │ │ │ ├── AllowedProjectRoles.java │ │ │ ├── NoCacheResponse.java │ │ │ └── RequestAuthFilter.java │ │ ├── hopssite │ │ │ ├── CommentService.java │ │ │ ├── HopssiteService.java │ │ │ ├── RatingService.java │ │ │ └── dto │ │ │ │ ├── CategoryDTO.java │ │ │ │ ├── CommentIssueReqDTO.java │ │ │ │ ├── CommentReqDTO.java │ │ │ │ ├── DatasetIssueReqDTO.java │ │ │ │ ├── DatasetReqDTO.java │ │ │ │ ├── HopsSiteServiceInfoDTO.java │ │ │ │ ├── LocalDatasetDTO.java │ │ │ │ ├── LocalDatasetHelper.java │ │ │ │ ├── RateReqDTO.java │ │ │ │ └── RatingValueDTO.java │ │ ├── jobs │ │ │ ├── AdamService.java │ │ │ ├── ExecutionService.java │ │ │ ├── FlinkService.java │ │ │ ├── InfluxDBResultDTO.java │ │ │ ├── InfluxDBService.java │ │ │ ├── JobService.java │ │ │ ├── KafkaService.java │ │ │ ├── SparkService.java │ │ │ └── TensorFlowService.java │ │ ├── jupyter │ │ │ ├── JupyterNotebookCleaner.java │ │ │ └── JupyterService.java │ │ ├── kibana │ │ │ ├── GrafanaProxyServlet.java │ │ │ ├── KibanaFilter.java │ │ │ ├── KibanaProxyServlet.java │ │ │ ├── MyRequestWrapper.java │ │ │ └── ProxyServlet.java │ │ ├── metadata │ │ │ ├── converters │ │ │ │ ├── JsonAttributeConverter.java │ │ │ │ └── JsonDocuments.java │ │ │ ├── listener │ │ │ │ └── ApplicationListener.java │ │ │ └── wscomm │ │ │ │ ├── DecoderHelper.java │ │ │ │ ├── EncoderHelper.java │ │ │ │ ├── MessageDecoder.java │ │ │ │ ├── MessageEncoder.java │ │ │ │ ├── MetadataController.java │ │ │ │ ├── MetadataProtocol.java │ │ │ │ ├── ResponseBuilder.java │ │ │ │ ├── ServletAwareConfig.java │ │ │ │ ├── WebSocketEndpoint.java │ │ │ │ └── message │ │ │ │ ├── CheckFieldContentMessage.java │ │ │ │ ├── CheckTableContentMessage.java │ │ │ │ ├── Command.java │ │ │ │ ├── ContentMessage.java │ │ │ │ ├── ErrorMessage.java │ │ │ │ ├── FetchMetadataMessage.java │ │ │ │ ├── FetchTableMetadataMessage.java │ │ │ │ ├── FieldMessage.java │ │ │ │ ├── FieldTypeMessage.java │ │ │ │ ├── Message.java │ │ │ │ ├── MetadataMessage.java │ │ │ │ ├── PlainMessage.java │ │ │ │ ├── RemoveMetadataMessage.java │ │ │ │ ├── RenameDirMessage.java │ │ │ │ ├── StoreMetadataMessage.java │ │ │ │ ├── TableMessage.java │ │ │ │ ├── TemplateMessage.java │ │ │ │ ├── TextMessage.java │ │ │ │ ├── UpdateMetadataMessage.java │ │ │ │ └── UploadedTemplateMessage.java │ │ ├── project │ │ │ ├── CertService.java │ │ │ ├── CertsDTO.java │ │ │ ├── DataSetService.java │ │ │ ├── FileTemplateDTO.java │ │ │ ├── HistoryService.java │ │ │ ├── MessageService.java │ │ │ ├── MetadataService.java │ │ │ ├── MoveDTO.java │ │ │ ├── ProjectMembersService.java │ │ │ ├── ProjectService.java │ │ │ ├── RequestService.java │ │ │ └── util │ │ │ │ ├── DsDTOValidator.java │ │ │ │ ├── DsPath.java │ │ │ │ └── PathValidator.java │ │ ├── pythonDeps │ │ │ └── PythonDepsService.java │ │ ├── tensorflow │ │ │ ├── TensorboardProxyServlet.java │ │ │ └── TfServingService.java │ │ ├── user │ │ │ ├── ActivityService.java │ │ │ ├── AuthService.java │ │ │ └── UserService.java │ │ ├── util │ │ │ ├── AuthStatus.java │ │ │ ├── BannerService.java │ │ │ ├── ClusterUtilisationService.java │ │ │ ├── CustomSSLProtocolSocketFactory.java │ │ │ ├── DownloadService.java │ │ │ ├── EndpointService.java │ │ │ ├── FilePreviewImageTypes.java │ │ │ ├── JsonResponse.java │ │ │ ├── LivyController.java │ │ │ ├── LocalFsService.java │ │ │ ├── UploadService.java │ │ │ ├── VariablesService.java │ │ │ └── VersionsDTO.java │ │ └── zeppelin │ │ │ ├── json │ │ │ └── NotebookTypeAdapterFactory.java │ │ │ ├── notebook │ │ │ └── repo │ │ │ │ └── HDFSNotebookRepo.java │ │ │ ├── rest │ │ │ ├── ConfigurationsRestApi.java │ │ │ ├── HeliumRestApi.java │ │ │ ├── HeliumService.java │ │ │ ├── InterpreterDTO.java │ │ │ ├── InterpreterRestApi.java │ │ │ ├── InterpreterService.java │ │ │ ├── LoginRestApi.java │ │ │ ├── NotebookRepoRestApi.java │ │ │ ├── NotebookResponse.java │ │ │ ├── NotebookRestApi.java │ │ │ ├── NotebookService.java │ │ │ ├── SecurityRestApi.java │ │ │ ├── ZeppelinRestApi.java │ │ │ ├── exception │ │ │ │ ├── BadRequestException.java │ │ │ │ ├── ForbiddenException.java │ │ │ │ └── NotFoundException.java │ │ │ └── message │ │ │ │ ├── CronRequest.java │ │ │ │ ├── NewInterpreterSettingRequest.java │ │ │ │ ├── NewNoteRequest.java │ │ │ │ ├── NewNotebookRequest.java │ │ │ │ ├── NewParagraphRequest.java │ │ │ │ ├── NotebookRepoSettingsRequest.java │ │ │ │ ├── RestartInterpreterRequest.java │ │ │ │ ├── RunParagraphWithParametersRequest.java │ │ │ │ └── UpdateInterpreterSettingRequest.java │ │ │ ├── server │ │ │ ├── JsonExclusionStrategy.java │ │ │ ├── JsonResponse.java │ │ │ ├── ZeppelinConfig.java │ │ │ └── ZeppelinConfigFactory.java │ │ │ ├── socket │ │ │ ├── Message.java │ │ │ ├── NotebookServer.java │ │ │ ├── NotebookServerImpl.java │ │ │ ├── NotebookServerImplFactory.java │ │ │ └── ZeppelinEndpointConfig.java │ │ │ ├── types │ │ │ └── InterpreterSettingsList.java │ │ │ └── util │ │ │ ├── ExceptionUtils.java │ │ │ ├── InterpreterBindingUtils.java │ │ │ ├── LivyMsg.java │ │ │ ├── SecurityUtils.java │ │ │ ├── TicketContainer.java │ │ │ ├── ZeppelinProjectCleaner.java │ │ │ └── ZeppelinResource.java │ │ └── rest │ │ └── application │ │ └── config │ │ └── ApplicationConfig.java │ ├── resources │ └── META-INF │ │ ├── spring.handlers │ │ └── spring.schemas │ └── webapp │ └── WEB-INF │ ├── glassfish-web.xml │ ├── proxies.xml │ └── web.xml ├── hopsworks-ca ├── pom.xml └── src │ └── main │ ├── java │ └── io │ │ └── hops │ │ └── hopsworks │ │ └── ca │ │ ├── api │ │ ├── ApplicationConfig.java │ │ ├── annotation │ │ │ └── AllowCORS.java │ │ ├── certs │ │ │ ├── CertSigningService.java │ │ │ └── NoCacheResponse.java │ │ ├── exception │ │ │ └── mapper │ │ │ │ ├── EJBExceptionMapper.java │ │ │ │ └── JsonResponse.java │ │ └── filter │ │ │ └── CORSFilter.java │ │ └── apiV2 │ │ ├── ApplicationConfig.java │ │ ├── annotation │ │ └── AllowCORS.java │ │ ├── certificates │ │ ├── AppCertsResource.java │ │ ├── CSRView.java │ │ ├── CertificatesResource.java │ │ ├── DelaTrackerCertsResource.java │ │ └── HostCertsResource.java │ │ ├── exception │ │ └── mapper │ │ │ ├── EJBExceptionMapper.java │ │ │ └── JsonResponse.java │ │ └── filter │ │ └── CORSFilter.java │ └── webapp │ └── WEB-INF │ ├── glassfish-web.xml │ └── web.xml ├── hopsworks-cluster ├── pom.xml └── src │ ├── main │ ├── java │ │ └── io │ │ │ └── hops │ │ │ └── hopsworks │ │ │ └── cluster │ │ │ ├── Cluster.java │ │ │ ├── ClusterDTO.java │ │ │ ├── ClusterState.java │ │ │ ├── ClusterYmlDTO.java │ │ │ ├── JsonResponse.java │ │ │ ├── controller │ │ │ ├── Cleanup.java │ │ │ └── ClusterController.java │ │ │ ├── exception │ │ │ └── mapper │ │ │ │ └── EJBExceptionMapper.java │ │ │ ├── response │ │ │ └── filter │ │ │ │ └── CORSFilter.java │ │ │ └── rest │ │ │ └── application │ │ │ └── config │ │ │ └── ApplicationConfig.java │ └── webapp │ │ ├── .bowerrc │ │ ├── WEB-INF │ │ └── web.xml │ │ ├── bower.json │ │ ├── css │ │ └── main.css │ │ ├── img │ │ └── network.png │ │ ├── index.html │ │ ├── js │ │ ├── app.js │ │ ├── controllers.js │ │ ├── directives.js │ │ ├── services.js │ │ └── util.js │ │ ├── package.json │ │ └── partials │ │ ├── home.html │ │ ├── register.html │ │ ├── registerCluster.html │ │ ├── unregister.html │ │ └── viewRegisteredClusters.html │ └── test │ └── javascript │ └── karma.conf.js ├── hopsworks-common ├── pom.xml └── src │ └── main │ ├── java │ └── io │ │ └── hops │ │ └── hopsworks │ │ └── common │ │ ├── admin │ │ └── llap │ │ │ ├── LlapClusterFacade.java │ │ │ ├── LlapClusterLifecycle.java │ │ │ └── LlapClusterStatus.java │ │ ├── constants │ │ ├── auth │ │ │ ├── AccountStatusErrorMessages.java │ │ │ └── AllowedRoles.java │ │ └── message │ │ │ └── ResponseMessages.java │ │ ├── dao │ │ ├── AbstractFacade.java │ │ ├── alert │ │ │ ├── Alert.java │ │ │ └── AlertEJB.java │ │ ├── app │ │ │ ├── EmailJsonDTO.java │ │ │ ├── JobWorkflowDTO.java │ │ │ ├── KeystoreDTO.java │ │ │ ├── ServingEndpointJsonDTO.java │ │ │ └── TopicJsonDTO.java │ │ ├── certificates │ │ │ ├── CertsFacade.java │ │ │ ├── ProjectGenericUserCerts.java │ │ │ ├── UserCerts.java │ │ │ ├── UserCertsDTO.java │ │ │ └── UserCertsPK.java │ │ ├── command │ │ │ ├── Command.java │ │ │ ├── CommandEJB.java │ │ │ ├── KagentCommands.java │ │ │ ├── SystemCommand.java │ │ │ └── SystemCommandFacade.java │ │ ├── dataset │ │ │ ├── DataSetDTO.java │ │ │ ├── Dataset.java │ │ │ ├── DatasetFacade.java │ │ │ ├── DatasetPermissions.java │ │ │ ├── DatasetRequest.java │ │ │ ├── DatasetRequestFacade.java │ │ │ ├── DatasetType.java │ │ │ └── RequestDTO.java │ │ ├── dela │ │ │ └── certs │ │ │ │ ├── ClusterCertificate.java │ │ │ │ └── ClusterCertificateFacade.java │ │ ├── hdfs │ │ │ ├── HdfsInodeAttributes.java │ │ │ ├── HdfsInodeAttributesFacade.java │ │ │ ├── HdfsLeDescriptors.java │ │ │ ├── HdfsLeDescriptorsFacade.java │ │ │ ├── HdfsLeDescriptorsPK.java │ │ │ └── inode │ │ │ │ ├── ByteConverter.java │ │ │ │ ├── FsView.java │ │ │ │ ├── Inode.java │ │ │ │ ├── InodeEncodingStatus.java │ │ │ │ ├── InodeEncodingStatusFacade.java │ │ │ │ ├── InodeFacade.java │ │ │ │ ├── InodeOps.java │ │ │ │ ├── InodePK.java │ │ │ │ ├── InodeView.java │ │ │ │ └── NavigationPath.java │ │ ├── hdfsUser │ │ │ ├── HdfsGroups.java │ │ │ ├── HdfsGroupsFacade.java │ │ │ ├── HdfsUsers.java │ │ │ └── HdfsUsersFacade.java │ │ ├── host │ │ │ ├── Health.java │ │ │ ├── Hosts.java │ │ │ ├── HostsFacade.java │ │ │ ├── MemoryInfo.java │ │ │ └── Status.java │ │ ├── jobhistory │ │ │ ├── Execution.java │ │ │ ├── ExecutionFacade.java │ │ │ ├── YarnAppHeuristicResult.java │ │ │ ├── YarnAppHeuristicResultDetails.java │ │ │ ├── YarnAppHeuristicResultDetailsFacade.java │ │ │ ├── YarnAppHeuristicResultDetailsPK.java │ │ │ ├── YarnAppHeuristicResultFacade.java │ │ │ ├── YarnAppResult.java │ │ │ ├── YarnAppResultDTO.java │ │ │ ├── YarnAppResultFacade.java │ │ │ ├── YarnApplicationAttemptStateFacade.java │ │ │ ├── YarnApplicationattemptstate.java │ │ │ ├── YarnApplicationattemptstatePK.java │ │ │ ├── YarnApplicationstate.java │ │ │ └── YarnApplicationstateFacade.java │ │ ├── jobs │ │ │ ├── FilesToRemove.java │ │ │ ├── FilesToRemovePK.java │ │ │ ├── JobInputFile.java │ │ │ ├── JobInputFilePK.java │ │ │ ├── JobOutputFile.java │ │ │ ├── JobOutputFilePK.java │ │ │ ├── JobsHistory.java │ │ │ ├── JobsHistoryFacade.java │ │ │ ├── JsonReduceable.java │ │ │ ├── description │ │ │ │ ├── AppIdDTO.java │ │ │ │ ├── AppInfoDTO.java │ │ │ │ ├── JobFacade.java │ │ │ │ ├── Jobs.java │ │ │ │ └── YarnAppUrlsDTO.java │ │ │ └── quota │ │ │ │ ├── YarnPriceMultiplicator.java │ │ │ │ ├── YarnProjectsDailyCost.java │ │ │ │ ├── YarnProjectsDailyCostPK.java │ │ │ │ ├── YarnProjectsQuota.java │ │ │ │ └── YarnProjectsQuotaFacade.java │ │ ├── jupyter │ │ │ ├── JupyterProject.java │ │ │ ├── JupyterSettings.java │ │ │ ├── JupyterSettingsFacade.java │ │ │ ├── JupyterSettingsPK.java │ │ │ └── config │ │ │ │ ├── JupyterConfigFilesGenerator.java │ │ │ │ ├── JupyterDTO.java │ │ │ │ ├── JupyterFacade.java │ │ │ │ └── JupyterProcessMgr.java │ │ ├── kafka │ │ │ ├── AclDTO.java │ │ │ ├── AclUserDTO.java │ │ │ ├── CsrDTO.java │ │ │ ├── KafkaFacade.java │ │ │ ├── PartitionDetailsDTO.java │ │ │ ├── ProjectTopics.java │ │ │ ├── ProjectTopicsPK.java │ │ │ ├── SchemaCompatiblityCheck.java │ │ │ ├── SchemaDTO.java │ │ │ ├── SchemaTopics.java │ │ │ ├── SchemaTopicsPK.java │ │ │ ├── SharedProjectDTO.java │ │ │ ├── SharedTopics.java │ │ │ ├── SharedTopicsPK.java │ │ │ ├── TopicAcls.java │ │ │ ├── TopicDTO.java │ │ │ ├── TopicDefaultValueDTO.java │ │ │ └── TopicDetailsDTO.java │ │ ├── kagent │ │ │ ├── Action.java │ │ │ ├── HostServices.java │ │ │ ├── HostServicesFacade.java │ │ │ ├── HostServicesInfo.java │ │ │ └── ServiceStatusDTO.java │ │ ├── log │ │ │ ├── meta │ │ │ │ ├── MetaLog.java │ │ │ │ ├── MetaLogFacade.java │ │ │ │ └── MetaType.java │ │ │ └── operation │ │ │ │ ├── OperationOn.java │ │ │ │ ├── OperationType.java │ │ │ │ ├── OperationsLog.java │ │ │ │ └── OperationsLogFacade.java │ │ ├── message │ │ │ ├── Message.java │ │ │ └── MessageFacade.java │ │ ├── metadata │ │ │ ├── DirPath.java │ │ │ ├── EntityIntf.java │ │ │ ├── Field.java │ │ │ ├── FieldPredefinedValue.java │ │ │ ├── FieldType.java │ │ │ ├── InodeBasicMetadata.java │ │ │ ├── InodeTableComposite.java │ │ │ ├── MTable.java │ │ │ ├── Metadata.java │ │ │ ├── MetadataPK.java │ │ │ ├── MetadataView.java │ │ │ ├── RawData.java │ │ │ ├── RawDataPK.java │ │ │ ├── SchemalessMetadata.java │ │ │ ├── SchemalessMetadataPK.java │ │ │ ├── Template.java │ │ │ ├── TemplateView.java │ │ │ ├── TupleToFile.java │ │ │ └── db │ │ │ │ ├── FieldFacade.java │ │ │ │ ├── FieldPredefinedValueFacade.java │ │ │ │ ├── FieldTypeFacade.java │ │ │ │ ├── InodeBasicMetadataFacade.java │ │ │ │ ├── MTableFacade.java │ │ │ │ ├── MetadataFacade.java │ │ │ │ ├── RawDataFacade.java │ │ │ │ ├── SchemalessMetadataFacade.java │ │ │ │ ├── TemplateFacade.java │ │ │ │ └── TupleToFileFacade.java │ │ ├── ndb │ │ │ ├── NdbBackup.java │ │ │ └── NdbBackupFacade.java │ │ ├── project │ │ │ ├── PaymentType.java │ │ │ ├── Project.java │ │ │ ├── ProjectFacade.java │ │ │ ├── cert │ │ │ │ ├── CertPwDTO.java │ │ │ │ └── CertPwReqDTO.java │ │ │ ├── pia │ │ │ │ ├── Pia.java │ │ │ │ └── PiaFacade.java │ │ │ ├── service │ │ │ │ ├── ProjectServiceEnum.java │ │ │ │ ├── ProjectServiceFacade.java │ │ │ │ ├── ProjectServicePK.java │ │ │ │ ├── ProjectServices.java │ │ │ │ └── ProjectServicesConverter.java │ │ │ └── team │ │ │ │ ├── ProjectRoleTypes.java │ │ │ │ ├── ProjectTeam.java │ │ │ │ ├── ProjectTeamFacade.java │ │ │ │ ├── ProjectTeamPK.java │ │ │ │ └── UserCertCreationReqDTO.java │ │ ├── pythonDeps │ │ │ ├── AnacondaRepo.java │ │ │ ├── CondaCommands.java │ │ │ ├── CondaLib.java │ │ │ ├── EnvironmentYmlJson.java │ │ │ ├── HostOpStatus.java │ │ │ ├── LibVersions.java │ │ │ ├── OpStatus.java │ │ │ ├── PythonDep.java │ │ │ ├── PythonDepJson.java │ │ │ ├── PythonDepsFacade.java │ │ │ └── Version.java │ │ ├── rstudio │ │ │ ├── RStudioProject.java │ │ │ ├── RStudioSettings.java │ │ │ ├── RStudioSettingsFacade.java │ │ │ └── RStudioSettingsPK.java │ │ ├── tensorflow │ │ │ └── TensorflowFacade.java │ │ ├── tfserving │ │ │ ├── TfServing.java │ │ │ ├── TfServingFacade.java │ │ │ ├── TfServingStatusConverter.java │ │ │ ├── TfServingStatusEnum.java │ │ │ ├── TransformGraphDTO.java │ │ │ └── config │ │ │ │ ├── TfServingDTO.java │ │ │ │ └── TfServingProcessMgr.java │ │ ├── user │ │ │ ├── BbcGroup.java │ │ │ ├── BbcGroupFacade.java │ │ │ ├── RoleAction.java │ │ │ ├── UserCardDTO.java │ │ │ ├── UserDTO.java │ │ │ ├── UserFacade.java │ │ │ ├── UserLoginsFacade.java │ │ │ ├── UserProjectDTO.java │ │ │ ├── Users.java │ │ │ ├── activity │ │ │ │ ├── Activity.java │ │ │ │ ├── ActivityDetail.java │ │ │ │ └── ActivityFacade.java │ │ │ ├── cluster │ │ │ │ ├── ClusterCert.java │ │ │ │ ├── ClusterCertFacade.java │ │ │ │ ├── RegistrationStatusConverter.java │ │ │ │ └── RegistrationStatusEnum.java │ │ │ ├── ldap │ │ │ │ ├── LdapUser.java │ │ │ │ ├── LdapUserDTO.java │ │ │ │ └── LdapUserFacade.java │ │ │ ├── security │ │ │ │ ├── Address.java │ │ │ │ ├── Organization.java │ │ │ │ ├── UserGroup.java │ │ │ │ ├── UserGroupPK.java │ │ │ │ ├── audit │ │ │ │ │ ├── AccountAudit.java │ │ │ │ │ ├── AccountAuditFacade.java │ │ │ │ │ ├── AccountsAuditActions.java │ │ │ │ │ ├── RolesAudit.java │ │ │ │ │ ├── RolesAuditAction.java │ │ │ │ │ ├── RolesAuditFacade.java │ │ │ │ │ ├── UserAuditActions.java │ │ │ │ │ └── Userlogins.java │ │ │ │ └── ua │ │ │ │ │ ├── SecurityQuestion.java │ │ │ │ │ ├── SecurityUtils.java │ │ │ │ │ ├── UserAccountStatus.java │ │ │ │ │ ├── UserAccountType.java │ │ │ │ │ └── UserAccountsEmailMessages.java │ │ │ └── sshkey │ │ │ │ ├── AuthorizedSshkeys.java │ │ │ │ ├── AuthorizedSshkeysPK.java │ │ │ │ ├── SshKeyDTO.java │ │ │ │ ├── SshKeys.java │ │ │ │ ├── SshKeysPK.java │ │ │ │ └── SshkeysFacade.java │ │ ├── util │ │ │ ├── Variables.java │ │ │ └── VariablesFacade.java │ │ ├── yarn │ │ │ └── containers │ │ │ │ ├── YarnContainersLog.java │ │ │ │ └── YarnContainersLogsFacade.java │ │ └── zeppelin │ │ │ ├── ZeppelinInterpreterConfFacade.java │ │ │ └── ZeppelinInterpreterConfs.java │ │ ├── dataset │ │ ├── DatasetController.java │ │ ├── FilePreviewDTO.java │ │ └── FolderNameValidator.java │ │ ├── dela │ │ ├── AddressJSON.java │ │ └── DelaClientType.java │ │ ├── elastic │ │ ├── ElasticController.java │ │ └── ElasticHit.java │ │ ├── exception │ │ ├── AppException.java │ │ ├── CryptoPasswordNotFoundException.java │ │ ├── EncryptionMasterPasswordException.java │ │ ├── JobCreationException.java │ │ └── ProjectInternalFoldersFailedException.java │ │ ├── hdfs │ │ ├── DistributedFileSystemOps.java │ │ ├── DistributedFsService.java │ │ ├── HdfsUsersController.java │ │ ├── UserGroupInformationService.java │ │ └── Utils.java │ │ ├── hive │ │ └── HiveController.java │ │ ├── jobs │ │ ├── AsynchronousJobExecutor.java │ │ ├── CancellableJob.java │ │ ├── JobController.java │ │ ├── JobScheduler.java │ │ ├── MutableJsonObject.java │ │ ├── adam │ │ │ ├── AdamArgument.java │ │ │ ├── AdamArgumentDTO.java │ │ │ ├── AdamCommand.java │ │ │ ├── AdamCommandConverter.java │ │ │ ├── AdamCommandDTO.java │ │ │ ├── AdamController.java │ │ │ ├── AdamInvocationArgument.java │ │ │ ├── AdamInvocationOption.java │ │ │ ├── AdamJob.java │ │ │ ├── AdamJobConfiguration.java │ │ │ ├── AdamOption.java │ │ │ └── AdamOptionDTO.java │ │ ├── administration │ │ │ └── JobAdministration.java │ │ ├── configuration │ │ │ ├── ConsumerGroupDTO.java │ │ │ ├── JobConfiguration.java │ │ │ ├── JsonReduceableConverter.java │ │ │ ├── KafkaDTO.java │ │ │ ├── KafkaTopicDTO.java │ │ │ └── ScheduleDTO.java │ │ ├── erasureCode │ │ │ ├── ErasureCodeJob.java │ │ │ └── ErasureCodeJobConfiguration.java │ │ ├── execution │ │ │ ├── ExecutionController.java │ │ │ └── HopsJob.java │ │ ├── flink │ │ │ ├── AbstractYarnClusterDescriptor.java │ │ │ ├── FlinkController.java │ │ │ ├── FlinkJob.java │ │ │ ├── FlinkJobConfiguration.java │ │ │ ├── FlinkYarnRunnerBuilder.java │ │ │ ├── YarnClusterClient.java │ │ │ └── YarnClusterDescriptor.java │ │ ├── jobhistory │ │ │ ├── ConfigDetailsDTO.java │ │ │ ├── JobDetailDTO.java │ │ │ ├── JobFinalStatus.java │ │ │ ├── JobHeuristicDTO.java │ │ │ ├── JobHeuristicDetailsComparator.java │ │ │ ├── JobHeuristicDetailsDTO.java │ │ │ ├── JobProposedConfigurationDTO.java │ │ │ ├── JobState.java │ │ │ └── JobType.java │ │ ├── spark │ │ │ ├── SparkController.java │ │ │ ├── SparkJob.java │ │ │ ├── SparkJobConfiguration.java │ │ │ ├── SparkSetEnvironmentCommand.java │ │ │ └── SparkYarnRunnerBuilder.java │ │ ├── tensorflow │ │ │ ├── TensorFlowController.java │ │ │ ├── TensorFlowJob.java │ │ │ ├── TensorFlowJobConfiguration.java │ │ │ └── TensorFlowYarnRunnerBuilder.java │ │ └── yarn │ │ │ ├── AnacondaProperties.java │ │ │ ├── ElasticProperties.java │ │ │ ├── KafkaProperties.java │ │ │ ├── LocalResourceDTO.java │ │ │ ├── LogReader.java │ │ │ ├── ServiceProperties.java │ │ │ ├── YarnExecutionFinalizer.java │ │ │ ├── YarnJob.java │ │ │ ├── YarnJobConfiguration.java │ │ │ ├── YarnJobsMonitor.java │ │ │ ├── YarnLogUtil.java │ │ │ ├── YarnMonitor.java │ │ │ ├── YarnRunner.java │ │ │ └── YarnSetupCommand.java │ │ ├── kafka │ │ ├── KafkaController.java │ │ └── ZookeeprTopicCleanerTimer.java │ │ ├── maintenance │ │ ├── Maintenance.java │ │ └── MaintenanceController.java │ │ ├── message │ │ └── MessageController.java │ │ ├── metadata │ │ └── exception │ │ │ ├── ApplicationException.java │ │ │ └── DatabaseException.java │ │ ├── project │ │ ├── MembersDTO.java │ │ ├── MoreInfoDTO.java │ │ ├── ProjectController.java │ │ ├── ProjectDTO.java │ │ ├── QuotasDTO.java │ │ └── TourProjectType.java │ │ ├── security │ │ ├── AcquireLockException.java │ │ ├── BaseHadoopClientsService.java │ │ ├── CAException.java │ │ ├── CertificateMaterializer.java │ │ ├── CertificateType.java │ │ ├── CertificatesController.java │ │ ├── CertificatesMgmService.java │ │ ├── DelaCSRCheckException.java │ │ ├── DelaCertsMasterPasswordHandler.java │ │ ├── DelaTrackerCertController.java │ │ ├── OpensslOperations.java │ │ ├── PGUserCertsMasterPasswordHandler.java │ │ ├── PKI.java │ │ ├── PSUserCertsMasterPasswordHandler.java │ │ ├── RemoteMaterialReferencesFacade.java │ │ ├── ServiceCertificateRotationTimer.java │ │ └── dao │ │ │ ├── RemoteMaterialRefID.java │ │ │ └── RemoteMaterialReferences.java │ │ ├── upload │ │ ├── HttpUtils.java │ │ ├── ResumableInfo.java │ │ ├── ResumableInfoStorage.java │ │ └── StagingManager.java │ │ ├── user │ │ ├── AuthController.java │ │ ├── UserStatusValidator.java │ │ ├── UserValidator.java │ │ ├── UsersController.java │ │ └── ldap │ │ │ ├── LdapGroupMapper.java │ │ │ ├── LdapRealm.java │ │ │ ├── LdapUserController.java │ │ │ └── LdapUserState.java │ │ ├── util │ │ ├── AsyncSystemCommandExecutor.java │ │ ├── ClientWrapper.java │ │ ├── ClusterUtil.java │ │ ├── ConfigFileGenerator.java │ │ ├── EmailBean.java │ │ ├── FormatUtils.java │ │ ├── HopsUtils.java │ │ ├── IoUtils.java │ │ ├── Ip.java │ │ ├── JsonResponse.java │ │ ├── JsonUtil.java │ │ ├── LocalhostServices.java │ │ ├── NodesTableItem.java │ │ ├── QRCodeGenerator.java │ │ ├── Settings.java │ │ ├── SystemCommandExecutor.java │ │ ├── ThreadedStreams.java │ │ ├── WebCommunication.java │ │ └── templates │ │ │ ├── AppendConfigReplacementPolicy.java │ │ │ ├── ConfigProperty.java │ │ │ ├── ConfigReplacementPolicy.java │ │ │ ├── IgnoreConfigReplacementPolicy.java │ │ │ └── OverwriteConfigReplacementPolicy.java │ │ └── yarn │ │ ├── YarnClientService.java │ │ └── YarnClientWrapper.java │ └── resources │ ├── META-INF │ ├── batch-jobs │ │ └── authorizedKeysJob.xml │ └── persistence.xml │ └── io │ └── hops │ ├── jupyter │ ├── config_template.json │ ├── custom_template.js │ ├── jupyter_notebook_config_template.py │ ├── kernel_template.json │ └── log4j_template.properties │ ├── metrics_template.properties │ ├── rstudio │ ├── environment_variables │ ├── rserver_conf │ ├── rsession_conf │ └── rstudio_users │ └── zeppelin │ ├── interpreter_template.json │ ├── log4j_template.properties │ ├── zeppelin_env_template.sh │ └── zeppelin_site_template.xml ├── hopsworks-dela ├── pom.xml └── src │ └── main │ ├── java │ └── io │ │ └── hops │ │ └── hopsworks │ │ ├── dela │ │ ├── DelaDatasetController.java │ │ ├── DelaHdfsController.java │ │ ├── DelaSetupWorker.java │ │ ├── DelaStateController.java │ │ ├── DelaWorkerController.java │ │ ├── RemoteDelaController.java │ │ ├── TransferDela.java │ │ ├── TransferDelaController.java │ │ ├── cluster │ │ │ └── ClusterDatasetController.java │ │ ├── dto │ │ │ ├── common │ │ │ │ ├── ClusterAddressDTO.java │ │ │ │ └── UserDTO.java │ │ │ ├── hopssite │ │ │ │ ├── ClusterServiceDTO.java │ │ │ │ ├── CommentDTO.java │ │ │ │ ├── CommentIssueDTO.java │ │ │ │ ├── DatasetDTO.java │ │ │ │ ├── HopsSiteDatasetDTO.java │ │ │ │ ├── RateDTO.java │ │ │ │ ├── RatingDTO.java │ │ │ │ └── SearchServiceDTO.java │ │ │ └── hopsworks │ │ │ │ ├── HopsworksSearchDTO.java │ │ │ │ └── HopsworksTransferDTO.java │ │ ├── exception │ │ │ └── ThirdPartyException.java │ │ ├── hopssite │ │ │ ├── HopsSite.java │ │ │ ├── HopsSiteExceptions.java │ │ │ └── HopssiteController.java │ │ ├── old_dto │ │ │ ├── ElementSummaryJSON.java │ │ │ ├── ErrorDescJSON.java │ │ │ ├── ExtendedDetails.java │ │ │ ├── FileInfo.java │ │ │ ├── HDFSEndpoint.java │ │ │ ├── HDFSResource.java │ │ │ ├── HdfsDetails.java │ │ │ ├── HopsContentsReqJSON.java │ │ │ ├── HopsContentsSummaryJSON.java │ │ │ ├── HopsDatasetDetailsDTO.java │ │ │ ├── HopsResource.java │ │ │ ├── HopsTorrentAdvanceDownload.java │ │ │ ├── HopsTorrentStartDownload.java │ │ │ ├── HopsTorrentUpload.java │ │ │ ├── KafkaDetails.java │ │ │ ├── KafkaEndpoint.java │ │ │ ├── KafkaResource.java │ │ │ ├── ManifestJSON.java │ │ │ ├── RemoveGVodJSON.java │ │ │ ├── RemoveTorrentDTO.java │ │ │ ├── StatusGVoDJSON.java │ │ │ ├── SuccessJSON.java │ │ │ ├── TorrentExtendedStatusJSON.java │ │ │ └── TorrentId.java │ │ ├── old_hopssite_dto │ │ │ ├── DatasetIssueDTO.java │ │ │ ├── PopularDatasetJSON.java │ │ │ └── RateIdDTO.java │ │ └── util │ │ │ └── ManifestHelper.java │ │ └── util │ │ ├── CertificateHelper.java │ │ └── SettingsHelper.java │ └── resources │ └── META-INF │ └── MANIFEST.MF ├── hopsworks-ear ├── pom.xml ├── src │ └── main │ │ └── application │ │ └── META-INF │ │ └── MANIFEST.MF └── test │ ├── .env.example │ ├── .rspec │ ├── .ruby-gemset │ ├── .ruby-version │ ├── Gemfile │ └── spec │ ├── ca_spec.rb │ ├── conda_spec.rb │ ├── dataset_spec.rb │ ├── factories │ ├── bbc_group.rb │ ├── cluster_cert.rb │ ├── conda_commands.rb │ ├── dataset.rb │ ├── project.rb │ ├── user.rb │ ├── user_group.rb │ └── variables.rb │ ├── helpers │ ├── ca_helper.rb │ ├── conda_helper.rb │ ├── dataset_helper.rb │ ├── factory_helper.rb │ ├── project_helper.rb │ ├── session_helper.rb │ └── variables_helper.rb │ ├── ldap_spec.rb │ ├── projects_spec.rb │ ├── session_spec.rb │ ├── spec_helper.rb │ └── tfserving_spec.rb ├── hopsworks-kmon ├── faces-config.NavData ├── pom.xml └── src │ └── main │ ├── java │ └── io │ │ └── hops │ │ └── hopsworks │ │ └── kmon │ │ ├── alert │ │ └── AlertController.java │ │ ├── cluster │ │ ├── ClusterStatusController.java │ │ ├── ClustersController.java │ │ └── ClustersLayoutController.java │ │ ├── command │ │ ├── CommandController.java │ │ └── ProgressController.java │ │ ├── communication │ │ └── CommunicationController.java │ │ ├── conda │ │ └── CondaController.java │ │ ├── group │ │ ├── GroupStatusController.java │ │ ├── ServiceController.java │ │ └── ServiceInstancesController.java │ │ ├── host │ │ ├── HostController.java │ │ └── HostsController.java │ │ ├── mysql │ │ ├── MySQLAccess.java │ │ └── MySqlController.java │ │ ├── service │ │ ├── GroupServiceMapper.java │ │ └── ServicesController.java │ │ ├── settings │ │ └── SettingsController.java │ │ ├── shell │ │ ├── ExecProcess.java │ │ └── StreamReaper.java │ │ ├── struct │ │ ├── ChartModel.java │ │ ├── ClusterInfo.java │ │ ├── CollectdBasicType.java │ │ ├── CollectdPluginInstance.java │ │ ├── CollectdPluginInstanceType.java │ │ ├── CollectdPluginType.java │ │ ├── ColorType.java │ │ ├── DatePeriod.java │ │ ├── DiskInfo.java │ │ ├── GroupInfo.java │ │ ├── GroupType.java │ │ ├── HostInfo.java │ │ ├── InstanceFullInfo.java │ │ ├── InstanceInfo.java │ │ ├── ServiceInstancesInfo.java │ │ ├── ServiceType.java │ │ └── StatusCount.java │ │ ├── terminal │ │ └── TerminalController.java │ │ ├── url │ │ └── UrlController.java │ │ ├── user │ │ ├── AbstractFacade.java │ │ ├── Credentials.java │ │ ├── JsonResponse.java │ │ ├── LoginBean.java │ │ └── ThrowableExceptionMapper.java │ │ └── utils │ │ ├── ColorUtils.java │ │ ├── CookieUtils.java │ │ ├── FilterUtils.java │ │ ├── GraphicsUtils.java │ │ ├── ParseUtils.java │ │ └── UrlUtils.java │ └── webapp │ ├── WEB-INF │ ├── faces-config.xml │ ├── glassfish-web.xml │ └── web.xml │ ├── error.xhtml │ ├── expired.xhtml │ ├── login.xhtml │ ├── monitor │ ├── anaconda.xhtml │ ├── backup-restore.xhtml │ ├── cluster-status.xhtml │ ├── clusters.xhtml │ ├── group-status.xhtml │ ├── host.xhtml │ ├── hosts.xhtml │ ├── layout.xhtml │ ├── service-instances.xhtml │ └── service-status.xhtml │ └── resources │ ├── css │ ├── main.css │ └── theme.css │ ├── images │ ├── ajax-loader.GIF │ ├── ajaxloadingbar.gif │ ├── hops-black.png │ └── views │ │ └── hadoop.png │ └── primefaces-bootstrap │ └── images │ ├── ui-icons_333333_256x240.png │ └── ui-icons_ffffff_256x240.png ├── hopsworks-web ├── pom.xml ├── src │ └── main │ │ └── webapp │ │ └── WEB-INF │ │ ├── glassfish-web.xml │ │ └── web.xml └── yo │ ├── .bowerrc │ ├── Gruntfile.js │ ├── app │ ├── .buildignore │ ├── .htaccess │ ├── footer.html │ ├── header.html │ ├── images │ │ ├── back.svg │ │ ├── checkbox_false.svg │ │ ├── checkbox_false_old.svg │ │ ├── checkbox_intermediate.svg │ │ ├── checkbox_true.svg │ │ ├── checkbox_true_old.svg │ │ ├── cloud_upload.svg │ │ ├── dela-green.png │ │ ├── delete-black_white.svg │ │ ├── delete.svg │ │ ├── delete_forever.svg │ │ ├── download.svg │ │ ├── experiment.xcf │ │ ├── file_upload.svg │ │ ├── folder.svg │ │ ├── folder_black.svg │ │ ├── folder_new.svg │ │ ├── folder_open.svg │ │ ├── folder_shared.svg │ │ ├── googleAuth.png │ │ ├── hops-black.png │ │ ├── hops.png │ │ ├── jupyter-200x200-bw.png │ │ ├── jupyter-200x200.png │ │ ├── jupyter.png │ │ ├── kafka_logo.png │ │ ├── list.svg │ │ ├── login-2fa.png │ │ ├── preview.svg │ │ ├── python_logo.png │ │ ├── qrExample.png │ │ ├── qrExample1.png │ │ ├── rstudio-color.png │ │ ├── rstudio.png │ │ ├── select2.png │ │ ├── spark_logo.png │ │ ├── spark_logo_white.png │ │ ├── tf-175x200.png │ │ ├── tf-175x200_bw.png │ │ ├── zepLogo.png │ │ └── zeppelin_logo.png │ ├── index.html │ ├── nav.html │ ├── navProject.html │ ├── robots.txt │ ├── scripts │ │ ├── app.js │ │ ├── controllers │ │ │ ├── alertCtrl.js │ │ │ ├── attachTemplateCtrl.js │ │ │ ├── cardCtrl.js │ │ │ ├── clusterUtilisationCtrl.js │ │ │ ├── createAclCtrl.js │ │ │ ├── createTopicCtrl.js │ │ │ ├── dataSetCreatorCtrl.js │ │ │ ├── datasetsCtrl.js │ │ │ ├── delaClientCtrl.js │ │ │ ├── delaCtrl.js │ │ │ ├── delaclusterDatasetCtrl.js │ │ │ ├── delahopsDatasetCtrl.js │ │ │ ├── detachTemplateCtrl.js │ │ │ ├── enterNameCtrl.js │ │ │ ├── filePreviewCtrl.js │ │ │ ├── fileUploadCtrl.js │ │ │ ├── historyCtrl.js │ │ │ ├── historyDetailCtrl.js │ │ │ ├── homeCtrl.js │ │ │ ├── importTemplateCtrl.js │ │ │ ├── inputModalCtrl.js │ │ │ ├── jobDetailCtrl.js │ │ │ ├── jobUICtrl.js │ │ │ ├── jobsCtrl.js │ │ │ ├── jupyterCtrl.js │ │ │ ├── kafkaCtrl.js │ │ │ ├── ldapLoginCtrl.js │ │ │ ├── ldapUserConsentModalCtrl.js │ │ │ ├── localFsCtrl.js │ │ │ ├── loginCtrl.js │ │ │ ├── mainCtrl.js │ │ │ ├── memberCtrl.js │ │ │ ├── messageCtrl.js │ │ │ ├── metadataCtrl.js │ │ │ ├── modalCtrl.js │ │ │ ├── modifyFieldCtrl.js │ │ │ ├── newFieldCtrl.js │ │ │ ├── newJobCtrl.js │ │ │ ├── newTableCtrl.js │ │ │ ├── newlistCtrl.js │ │ │ ├── noteCreateCtrl.js │ │ │ ├── profileCtrl.js │ │ │ ├── projectCreatorCtrl.js │ │ │ ├── projectCtrl.js │ │ │ ├── projectSettingsCtrl.js │ │ │ ├── publicDSPanelCtrl.js │ │ │ ├── pythonDepsCtrl.js │ │ │ ├── recoverCtrl.js │ │ │ ├── registrationCtrl.js │ │ │ ├── schemaCreateCtrl.js │ │ │ ├── schemaUpdateContentCtrl.js │ │ │ ├── schemaViewContentCtrl.js │ │ │ ├── searchResultCtrl.js │ │ │ ├── selectEnvYmlCtrl.js │ │ │ ├── selectFileCtrl.js │ │ │ ├── selectProjectCtrl.js │ │ │ ├── setupDownload.js │ │ │ ├── shareDatasetCtrl.js │ │ │ ├── sshKeysCtrl.js │ │ │ ├── tfservingCtrl.js │ │ │ ├── transformGraphCtrl.js │ │ │ ├── uberCtrl.js │ │ │ ├── unshareDatasetCtrl.js │ │ │ ├── viewPublicDatasetCtrl.js │ │ │ ├── viewSearchResultCtrl.js │ │ │ ├── vizopsCtrl.js │ │ │ ├── vizopsDriverCtrl.js │ │ │ ├── vizopsExecutorCtrl.js │ │ │ ├── vizopsOverviewCtrl.js │ │ │ ├── vizopsStreamingCtrl.js │ │ │ ├── vizopsWorkerCtrl.js │ │ │ └── zeppelinCtrl.js │ │ ├── directives │ │ │ ├── hwPanel.js │ │ │ ├── hwcard.js │ │ │ ├── modal.js │ │ │ ├── passwordMatch.js │ │ │ └── switch.js │ │ ├── js │ │ │ ├── ace │ │ │ │ ├── ace.js │ │ │ │ ├── mode-json.js │ │ │ │ └── worker-json.js │ │ │ ├── countries.js │ │ │ ├── graph-settings.js │ │ │ ├── hamburger.js │ │ │ └── util.js │ │ └── services │ │ │ ├── ActivityService.js │ │ │ ├── AdamService.js │ │ │ ├── AuthInterceptorService.js │ │ │ ├── AuthService.js │ │ │ ├── BannerService.js │ │ │ ├── CertService.js │ │ │ ├── ClusterUtilService.js │ │ │ ├── DataSetService.js │ │ │ ├── DelaClusterProjectService.js │ │ │ ├── DelaClusterService.js │ │ │ ├── DelaProjectService.js │ │ │ ├── DelaService.js │ │ │ ├── ElasticService.js │ │ │ ├── EndpointService.js │ │ │ ├── FileUploadService.js │ │ │ ├── FlinkService.js │ │ │ ├── HistoryService.js │ │ │ ├── HopssiteService.js │ │ │ ├── JobService.js │ │ │ ├── JupyterService.js │ │ │ ├── KafkaService.js │ │ │ ├── KibanaService.js │ │ │ ├── LocalFsService.js │ │ │ ├── MembersService.js │ │ │ ├── MessageService.js │ │ │ ├── MetadataActionService.js │ │ │ ├── MetadataHelperService.js │ │ │ ├── MetadataRestService.js │ │ │ ├── MetadataService.js │ │ │ ├── ModalService.js │ │ │ ├── ProjectHistoryService.js │ │ │ ├── ProjectService.js │ │ │ ├── PythonDepsService.js │ │ │ ├── RequestInterceptorService.js │ │ │ ├── RequestService.js │ │ │ ├── SecurityQuestionsService.js │ │ │ ├── SparkService.js │ │ │ ├── StorageService.js │ │ │ ├── TensorFlowService.js │ │ │ ├── TfServingService.js │ │ │ ├── TourService.js │ │ │ ├── TransformRequestService.js │ │ │ ├── UserService.js │ │ │ ├── UtilsService.js │ │ │ ├── VariablesService.js │ │ │ ├── VizopsService.js │ │ │ └── ZeppelinService.js │ ├── styles │ │ ├── ExampleProjectLoaderFix.css │ │ ├── angular-resizable.css │ │ ├── angular-tour.css │ │ ├── board.css │ │ ├── cards.css │ │ ├── dropdown-submenu.css │ │ ├── filebrowser.css │ │ ├── files.css │ │ ├── form.css │ │ ├── jquery.qtip.css │ │ ├── loading.css │ │ ├── message.css │ │ ├── nav.css │ │ ├── project_sidebar.css │ │ ├── publicDataset.css │ │ ├── scrollbar.css │ │ ├── search-result.css │ │ ├── select2.css │ │ ├── slidingMenu.less │ │ ├── style.css │ │ └── timeline.css │ └── views │ │ ├── alertModal.html │ │ ├── card.html │ │ ├── certsModal.html │ │ ├── confirmModal.html │ │ ├── confirmShareModal.html │ │ ├── createTopic.html │ │ ├── createTopicAcl.html │ │ ├── datasetPermissions.html │ │ ├── datasets.html │ │ ├── datasetsBrowser.html │ │ ├── dela.html │ │ ├── delaclusterDataset.html │ │ ├── delahopsDataset.html │ │ ├── enterNameModal.html │ │ ├── filePreview.html │ │ ├── fileUpload.html │ │ ├── history.html │ │ ├── historyDetails.html │ │ ├── home.html │ │ ├── importTemplate.html │ │ ├── jobDetails.html │ │ ├── jobMonitor.html │ │ ├── jobs.html │ │ ├── jsonModal.html │ │ ├── jupyterConfigModal.html │ │ ├── jupyterDashboard.html │ │ ├── kafka.html │ │ ├── ldapLogin.html │ │ ├── ldapUserConsentModal.html │ │ ├── login.html │ │ ├── members.html │ │ ├── messageModal.html │ │ ├── metadata.html │ │ ├── metadata │ │ ├── attachTemplateDialog.html │ │ ├── card.html │ │ ├── detachTemplateDialog.html │ │ ├── extendedMetadata.html │ │ ├── modifyFieldDialog.html │ │ ├── newFieldModal.html │ │ └── newListModal.html │ │ ├── newDataSet.html │ │ ├── newJob.html │ │ ├── newWorkflow.html │ │ ├── noteCreateModal.html │ │ ├── profile.html │ │ ├── project.html │ │ ├── projectCreateModal.html │ │ ├── projectSettings.html │ │ ├── publicDSPanel.html │ │ ├── python.html │ │ ├── qrCode.html │ │ ├── recover.html │ │ ├── register.html │ │ ├── reportIssue.html │ │ ├── rstudio.html │ │ ├── schemaCreate.html │ │ ├── schemaUpdateContent.html │ │ ├── schemaViewContent.html │ │ ├── search.html │ │ ├── searchResult.html │ │ ├── searchResultDetail.html │ │ ├── selectDir.html │ │ ├── selectEnvYml.html │ │ ├── selectFile.html │ │ ├── selectLocalDir.html │ │ ├── selectLocalFile.html │ │ ├── selectProject.html │ │ ├── setupDownload.html │ │ ├── shareDataset.html │ │ ├── ssh.html │ │ ├── sshKeys.html │ │ ├── tabbedPane.html │ │ ├── tfServing.html │ │ ├── transformGraphModal.html │ │ ├── uberModal.html │ │ ├── unshareDataset.html │ │ ├── viewPublicDataset.html │ │ ├── vizops.html │ │ ├── yubikey.html │ │ └── zeppelinDashboard.html │ ├── bower.json │ ├── nbproject │ ├── customs.json │ ├── project.properties │ └── project.xml │ ├── package.json │ └── test │ ├── .jshintrc │ └── spec │ └── controllers │ ├── about.js │ └── main.js ├── pom.xml ├── scripts ├── README.md ├── antonis-bbc2-frontend.sh ├── asadmin ├── cargo.sh ├── copy.sh ├── create_project_as_user.py ├── deploy.sh ├── dev-deploy-frontend.sh ├── gautier-bbc2.sh ├── gautier-frontend-scp.sh ├── jim-bbc1-scp.sh ├── jim-frontend-vagrant.sh ├── jim-snurran-scp.sh ├── js.sh ├── kafka-frontend-scp.sh ├── localhost.sh ├── misganu-frontend-scp.sh ├── renew-letsencrypt.sh ├── scp-deploy-frontend.sh ├── tkak-frontend-scp.sh └── update-tables.sh └── tools ├── intellij └── code_formatting.xml ├── maven ├── checkstyle.xml └── suppressions.xml ├── metadata_designer ├── Sample.json ├── SampleCollection.json ├── SampleCollection_Ext.json └── Study.json └── netbeans └── netbeans-settings.zip /.github/pull_request_template.md: -------------------------------------------------------------------------------- 1 | ## Make sure there is no duplicate PR for this issue 2 | 3 | * **Please check if the PR meets the following requirements** 4 | - [ ] Adds tests for the submitted changes (for bug fixes & features) 5 | - [ ] Passes the tests 6 | - [ ] HOPSWORKS JIRA issue has been opened for this PR 7 | - [ ] All commits have been squashed down to a single commit 8 | 9 | 10 | * **Post a link to the associated JIRA issue** 11 | 12 | 13 | * **What kind of change does this PR introduce?** (Bug fix, feature, docs update, ...) 14 | 15 | 16 | * **What is the new behavior (if this is a feature change)?** 17 | 18 | 19 | * **Does this PR introduce a breaking change?** (What changes might users need to make in their application due to this PR?) 20 | 21 | * **Other information**: 22 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2013 - 2018 Logical Clocks AB and RISE SICS AB 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /faces-config.NavData: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /hopsworks-admin/faces-config.NavData: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /hopsworks-admin/src/main/webapp/resources/images/ajax-loader.GIF: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dc-sics/hopsworks/750106ec1fb966a78181dc5d65bb58310edc865a/hopsworks-admin/src/main/webapp/resources/images/ajax-loader.GIF -------------------------------------------------------------------------------- /hopsworks-admin/src/main/webapp/resources/images/ajax-loader1.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dc-sics/hopsworks/750106ec1fb966a78181dc5d65bb58310edc865a/hopsworks-admin/src/main/webapp/resources/images/ajax-loader1.gif -------------------------------------------------------------------------------- /hopsworks-admin/src/main/webapp/resources/images/ajaxloadingbar.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dc-sics/hopsworks/750106ec1fb966a78181dc5d65bb58310edc865a/hopsworks-admin/src/main/webapp/resources/images/ajaxloadingbar.gif -------------------------------------------------------------------------------- /hopsworks-admin/src/main/webapp/resources/images/chmasterencpass.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dc-sics/hopsworks/750106ec1fb966a78181dc5d65bb58310edc865a/hopsworks-admin/src/main/webapp/resources/images/chmasterencpass.png -------------------------------------------------------------------------------- /hopsworks-admin/src/main/webapp/resources/images/export/csv.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dc-sics/hopsworks/750106ec1fb966a78181dc5d65bb58310edc865a/hopsworks-admin/src/main/webapp/resources/images/export/csv.png -------------------------------------------------------------------------------- /hopsworks-admin/src/main/webapp/resources/images/hops-black.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dc-sics/hopsworks/750106ec1fb966a78181dc5d65bb58310edc865a/hopsworks-admin/src/main/webapp/resources/images/hops-black.png -------------------------------------------------------------------------------- /hopsworks-admin/src/main/webapp/resources/images/jupyter.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dc-sics/hopsworks/750106ec1fb966a78181dc5d65bb58310edc865a/hopsworks-admin/src/main/webapp/resources/images/jupyter.png -------------------------------------------------------------------------------- /hopsworks-admin/src/main/webapp/resources/images/llap.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dc-sics/hopsworks/750106ec1fb966a78181dc5d65bb58310edc865a/hopsworks-admin/src/main/webapp/resources/images/llap.png -------------------------------------------------------------------------------- /hopsworks-admin/src/main/webapp/resources/images/manage_hosts.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dc-sics/hopsworks/750106ec1fb966a78181dc5d65bb58310edc865a/hopsworks-admin/src/main/webapp/resources/images/manage_hosts.png -------------------------------------------------------------------------------- /hopsworks-admin/src/main/webapp/resources/images/python_logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dc-sics/hopsworks/750106ec1fb966a78181dc5d65bb58310edc865a/hopsworks-admin/src/main/webapp/resources/images/python_logo.png -------------------------------------------------------------------------------- /hopsworks-admin/src/main/webapp/resources/images/refresh_variables.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dc-sics/hopsworks/750106ec1fb966a78181dc5d65bb58310edc865a/hopsworks-admin/src/main/webapp/resources/images/refresh_variables.png -------------------------------------------------------------------------------- /hopsworks-admin/src/main/webapp/resources/images/users/2factorauth.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dc-sics/hopsworks/750106ec1fb966a78181dc5d65bb58310edc865a/hopsworks-admin/src/main/webapp/resources/images/users/2factorauth.png -------------------------------------------------------------------------------- /hopsworks-admin/src/main/webapp/resources/images/users/android1.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dc-sics/hopsworks/750106ec1fb966a78181dc5d65bb58310edc865a/hopsworks-admin/src/main/webapp/resources/images/users/android1.gif -------------------------------------------------------------------------------- /hopsworks-admin/src/main/webapp/resources/images/users/android2.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dc-sics/hopsworks/750106ec1fb966a78181dc5d65bb58310edc865a/hopsworks-admin/src/main/webapp/resources/images/users/android2.gif -------------------------------------------------------------------------------- /hopsworks-admin/src/main/webapp/resources/images/users/avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dc-sics/hopsworks/750106ec1fb966a78181dc5d65bb58310edc865a/hopsworks-admin/src/main/webapp/resources/images/users/avatar.png -------------------------------------------------------------------------------- /hopsworks-admin/src/main/webapp/resources/images/users/backup.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dc-sics/hopsworks/750106ec1fb966a78181dc5d65bb58310edc865a/hopsworks-admin/src/main/webapp/resources/images/users/backup.png -------------------------------------------------------------------------------- /hopsworks-admin/src/main/webapp/resources/images/users/edit.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dc-sics/hopsworks/750106ec1fb966a78181dc5d65bb58310edc865a/hopsworks-admin/src/main/webapp/resources/images/users/edit.png -------------------------------------------------------------------------------- /hopsworks-admin/src/main/webapp/resources/images/users/elephant.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dc-sics/hopsworks/750106ec1fb966a78181dc5d65bb58310edc865a/hopsworks-admin/src/main/webapp/resources/images/users/elephant.png -------------------------------------------------------------------------------- /hopsworks-admin/src/main/webapp/resources/images/users/hdfs-logo.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dc-sics/hopsworks/750106ec1fb966a78181dc5d65bb58310edc865a/hopsworks-admin/src/main/webapp/resources/images/users/hdfs-logo.jpg -------------------------------------------------------------------------------- /hopsworks-admin/src/main/webapp/resources/images/users/iphone.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dc-sics/hopsworks/750106ec1fb966a78181dc5d65bb58310edc865a/hopsworks-admin/src/main/webapp/resources/images/users/iphone.png -------------------------------------------------------------------------------- /hopsworks-admin/src/main/webapp/resources/images/users/lock.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dc-sics/hopsworks/750106ec1fb966a78181dc5d65bb58310edc865a/hopsworks-admin/src/main/webapp/resources/images/users/lock.png -------------------------------------------------------------------------------- /hopsworks-admin/src/main/webapp/resources/images/users/maintenance.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dc-sics/hopsworks/750106ec1fb966a78181dc5d65bb58310edc865a/hopsworks-admin/src/main/webapp/resources/images/users/maintenance.png -------------------------------------------------------------------------------- /hopsworks-admin/src/main/webapp/resources/images/users/mobileUser.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dc-sics/hopsworks/750106ec1fb966a78181dc5d65bb58310edc865a/hopsworks-admin/src/main/webapp/resources/images/users/mobileUser.png -------------------------------------------------------------------------------- /hopsworks-admin/src/main/webapp/resources/images/users/monitor.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dc-sics/hopsworks/750106ec1fb966a78181dc5d65bb58310edc865a/hopsworks-admin/src/main/webapp/resources/images/users/monitor.png -------------------------------------------------------------------------------- /hopsworks-admin/src/main/webapp/resources/images/users/projectManagement.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dc-sics/hopsworks/750106ec1fb966a78181dc5d65bb58310edc865a/hopsworks-admin/src/main/webapp/resources/images/users/projectManagement.png -------------------------------------------------------------------------------- /hopsworks-admin/src/main/webapp/resources/images/users/spamUser.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dc-sics/hopsworks/750106ec1fb966a78181dc5d65bb58310edc865a/hopsworks-admin/src/main/webapp/resources/images/users/spamUser.png -------------------------------------------------------------------------------- /hopsworks-admin/src/main/webapp/resources/images/users/studyaudit.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dc-sics/hopsworks/750106ec1fb966a78181dc5d65bb58310edc865a/hopsworks-admin/src/main/webapp/resources/images/users/studyaudit.png -------------------------------------------------------------------------------- /hopsworks-admin/src/main/webapp/resources/images/users/userAdmin.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dc-sics/hopsworks/750106ec1fb966a78181dc5d65bb58310edc865a/hopsworks-admin/src/main/webapp/resources/images/users/userAdmin.png -------------------------------------------------------------------------------- /hopsworks-admin/src/main/webapp/resources/images/users/windows-qr.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dc-sics/hopsworks/750106ec1fb966a78181dc5d65bb58310edc865a/hopsworks-admin/src/main/webapp/resources/images/users/windows-qr.png -------------------------------------------------------------------------------- /hopsworks-admin/src/main/webapp/resources/images/users/windows.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dc-sics/hopsworks/750106ec1fb966a78181dc5d65bb58310edc865a/hopsworks-admin/src/main/webapp/resources/images/users/windows.jpg -------------------------------------------------------------------------------- /hopsworks-admin/src/main/webapp/resources/images/users/windows1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dc-sics/hopsworks/750106ec1fb966a78181dc5d65bb58310edc865a/hopsworks-admin/src/main/webapp/resources/images/users/windows1.png -------------------------------------------------------------------------------- /hopsworks-admin/src/main/webapp/resources/images/views/hadoop.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dc-sics/hopsworks/750106ec1fb966a78181dc5d65bb58310edc865a/hopsworks-admin/src/main/webapp/resources/images/views/hadoop.png -------------------------------------------------------------------------------- /hopsworks-admin/src/main/webapp/resources/primefaces-bootstrap/images/ui-icons_333333_256x240.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dc-sics/hopsworks/750106ec1fb966a78181dc5d65bb58310edc865a/hopsworks-admin/src/main/webapp/resources/primefaces-bootstrap/images/ui-icons_333333_256x240.png -------------------------------------------------------------------------------- /hopsworks-admin/src/main/webapp/resources/primefaces-bootstrap/images/ui-icons_ffffff_256x240.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dc-sics/hopsworks/750106ec1fb966a78181dc5d65bb58310edc865a/hopsworks-admin/src/main/webapp/resources/primefaces-bootstrap/images/ui-icons_ffffff_256x240.png -------------------------------------------------------------------------------- /hopsworks-api-v2/src/main/java/io/hops/hopsworks/apiV2/ErrorResponse.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | * 4 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | * software and associated documentation files (the "Software"), to deal in the Software 6 | * without restriction, including without limitation the rights to use, copy, modify, merge, 7 | * publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | * persons to whom the Software is furnished to do so, subject to the following conditions: 9 | * 10 | * The above copyright notice and this permission notice shall be included in all copies or 11 | * substantial portions of the Software. 12 | * 13 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | * 19 | */ 20 | package io.hops.hopsworks.apiV2; 21 | 22 | import javax.xml.bind.annotation.XmlRootElement; 23 | 24 | @XmlRootElement 25 | public class ErrorResponse { 26 | 27 | private String description; 28 | 29 | public ErrorResponse(){} 30 | 31 | public String getDescription() { 32 | return description; 33 | } 34 | 35 | public void setDescription(String description) { 36 | this.description = description; 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /hopsworks-api/src/main/java/io/hops/hopsworks/api/dela/dto/BootstrapDTO.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | * 4 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | * software and associated documentation files (the "Software"), to deal in the Software 6 | * without restriction, including without limitation the rights to use, copy, modify, merge, 7 | * publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | * persons to whom the Software is furnished to do so, subject to the following conditions: 9 | * 10 | * The above copyright notice and this permission notice shall be included in all copies or 11 | * substantial portions of the Software. 12 | * 13 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | * 19 | */ 20 | 21 | package io.hops.hopsworks.api.dela.dto; 22 | 23 | import io.hops.hopsworks.dela.dto.common.ClusterAddressDTO; 24 | import java.util.List; 25 | import javax.xml.bind.annotation.XmlRootElement; 26 | 27 | @XmlRootElement 28 | public class BootstrapDTO { 29 | private List bootstrap; 30 | 31 | public List getBootstrap() { 32 | return bootstrap; 33 | } 34 | 35 | public void setBootstrap(List bootstrap) { 36 | this.bootstrap = bootstrap; 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /hopsworks-api/src/main/java/io/hops/hopsworks/api/dela/dto/InodeIdDTO.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | * 4 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | * software and associated documentation files (the "Software"), to deal in the Software 6 | * without restriction, including without limitation the rights to use, copy, modify, merge, 7 | * publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | * persons to whom the Software is furnished to do so, subject to the following conditions: 9 | * 10 | * The above copyright notice and this permission notice shall be included in all copies or 11 | * substantial portions of the Software. 12 | * 13 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | * 19 | */ 20 | 21 | package io.hops.hopsworks.api.dela.dto; 22 | 23 | import javax.xml.bind.annotation.XmlRootElement; 24 | 25 | @XmlRootElement 26 | public class InodeIdDTO { 27 | private Integer id; 28 | 29 | public Integer getId() { 30 | return id; 31 | } 32 | 33 | public void setId(Integer id) { 34 | this.id = id; 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /hopsworks-api/src/main/java/io/hops/hopsworks/api/hopssite/dto/RatingValueDTO.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | * 4 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | * software and associated documentation files (the "Software"), to deal in the Software 6 | * without restriction, including without limitation the rights to use, copy, modify, merge, 7 | * publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | * persons to whom the Software is furnished to do so, subject to the following conditions: 9 | * 10 | * The above copyright notice and this permission notice shall be included in all copies or 11 | * substantial portions of the Software. 12 | * 13 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | * 19 | */ 20 | 21 | package io.hops.hopsworks.api.hopssite.dto; 22 | 23 | import javax.xml.bind.annotation.XmlRootElement; 24 | 25 | @XmlRootElement 26 | public class RatingValueDTO { 27 | private int value; 28 | 29 | public int getValue() { 30 | return value; 31 | } 32 | 33 | public void setValue(int value) { 34 | this.value = value; 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /hopsworks-api/src/main/java/io/hops/hopsworks/api/metadata/wscomm/EncoderHelper.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | * 4 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | * software and associated documentation files (the "Software"), to deal in the Software 6 | * without restriction, including without limitation the rights to use, copy, modify, merge, 7 | * publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | * persons to whom the Software is furnished to do so, subject to the following conditions: 9 | * 10 | * The above copyright notice and this permission notice shall be included in all copies or 11 | * substantial portions of the Software. 12 | * 13 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | * 19 | */ 20 | 21 | package io.hops.hopsworks.api.metadata.wscomm; 22 | 23 | public class EncoderHelper { 24 | 25 | } 26 | -------------------------------------------------------------------------------- /hopsworks-api/src/main/java/io/hops/hopsworks/api/util/FilePreviewImageTypes.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | * 4 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | * software and associated documentation files (the "Software"), to deal in the Software 6 | * without restriction, including without limitation the rights to use, copy, modify, merge, 7 | * publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | * persons to whom the Software is furnished to do so, subject to the following conditions: 9 | * 10 | * The above copyright notice and this permission notice shall be included in all copies or 11 | * substantial portions of the Software. 12 | * 13 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | * 19 | */ 20 | 21 | package io.hops.hopsworks.api.util; 22 | 23 | /** 24 | * Common image file type handled by Datasets FilePreview functionality. 25 | *

26 | */ 27 | public enum FilePreviewImageTypes { 28 | PNG, 29 | JPG, 30 | JPEG, 31 | TIFF, 32 | GIF, 33 | EXIF, 34 | BMP, 35 | BPG 36 | 37 | } 38 | -------------------------------------------------------------------------------- /hopsworks-api/src/main/java/io/hops/hopsworks/api/zeppelin/rest/NotebookResponse.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * http://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | package io.hops.hopsworks.api.zeppelin.rest; 18 | 19 | import javax.xml.bind.annotation.XmlRootElement; 20 | 21 | /** 22 | * Response wrapper. 23 | * 24 | */ 25 | @XmlRootElement 26 | public class NotebookResponse { 27 | 28 | private String msg; 29 | 30 | public NotebookResponse() { 31 | } 32 | 33 | public NotebookResponse(String msg) { 34 | this.msg = msg; 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /hopsworks-api/src/main/java/io/hops/hopsworks/api/zeppelin/rest/message/CronRequest.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * http://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | package io.hops.hopsworks.api.zeppelin.rest.message; 18 | 19 | import com.google.gson.Gson; 20 | import org.apache.zeppelin.common.JsonSerializable; 21 | 22 | /** 23 | * CronRequest rest api request message 24 | *

25 | */ 26 | public class CronRequest implements JsonSerializable { 27 | 28 | private static final Gson gson = new Gson(); 29 | 30 | String cron; 31 | 32 | public CronRequest() { 33 | 34 | } 35 | 36 | public String getCronString() { 37 | return cron; 38 | } 39 | 40 | public String toJson() { 41 | return gson.toJson(this); 42 | } 43 | 44 | public static CronRequest fromJson(String json) { 45 | return gson.fromJson(json, CronRequest.class); 46 | } 47 | } 48 | -------------------------------------------------------------------------------- /hopsworks-api/src/main/java/io/hops/hopsworks/api/zeppelin/rest/message/RestartInterpreterRequest.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * http://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | package io.hops.hopsworks.api.zeppelin.rest.message; 18 | 19 | import com.google.gson.Gson; 20 | import org.apache.zeppelin.common.JsonSerializable; 21 | 22 | /** 23 | * RestartInterpreter rest api request message 24 | */ 25 | public class RestartInterpreterRequest implements JsonSerializable { 26 | 27 | private static final Gson gson = new Gson(); 28 | 29 | String noteId; 30 | 31 | public RestartInterpreterRequest() { 32 | 33 | } 34 | 35 | public String getNoteId() { 36 | return noteId; 37 | } 38 | 39 | public String toJson() { 40 | return gson.toJson(this); 41 | } 42 | 43 | public static RestartInterpreterRequest fromJson(String json) { 44 | return gson.fromJson(json, RestartInterpreterRequest.class); 45 | } 46 | } 47 | -------------------------------------------------------------------------------- /hopsworks-api/src/main/java/io/hops/hopsworks/api/zeppelin/rest/message/RunParagraphWithParametersRequest.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * http://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | package io.hops.hopsworks.api.zeppelin.rest.message; 18 | 19 | import com.google.gson.Gson; 20 | import org.apache.zeppelin.common.JsonSerializable; 21 | 22 | import java.util.Map; 23 | 24 | /** 25 | * RunParagraphWithParametersRequest rest api request message 26 | */ 27 | public class RunParagraphWithParametersRequest implements JsonSerializable { 28 | 29 | private static final Gson gson = new Gson(); 30 | 31 | Map params; 32 | 33 | public RunParagraphWithParametersRequest() { 34 | 35 | } 36 | 37 | public Map getParams() { 38 | return params; 39 | } 40 | 41 | public String toJson() { 42 | return gson.toJson(this); 43 | } 44 | 45 | public static RunParagraphWithParametersRequest fromJson(String json) { 46 | return gson.fromJson(json, RunParagraphWithParametersRequest.class); 47 | } 48 | } 49 | -------------------------------------------------------------------------------- /hopsworks-api/src/main/java/io/hops/hopsworks/api/zeppelin/server/JsonExclusionStrategy.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * http://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | package io.hops.hopsworks.api.zeppelin.server; 18 | 19 | import com.google.gson.ExclusionStrategy; 20 | import com.google.gson.FieldAttributes; 21 | 22 | /** 23 | * Created by eranw on 8/30/15. 24 | */ 25 | public class JsonExclusionStrategy implements ExclusionStrategy { 26 | 27 | public boolean shouldSkipClass(Class arg0) { 28 | return false; 29 | } 30 | 31 | public boolean shouldSkipField(FieldAttributes f) { 32 | return false; 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /hopsworks-api/src/main/java/io/hops/hopsworks/api/zeppelin/types/InterpreterSettingsList.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * http://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | package io.hops.hopsworks.api.zeppelin.types; 18 | 19 | import java.util.List; 20 | 21 | import org.apache.zeppelin.interpreter.InterpreterInfo; 22 | 23 | /** 24 | * InterpreterSetting information for binding 25 | */ 26 | public class InterpreterSettingsList { 27 | 28 | private String id; 29 | private String name; 30 | private boolean selected; 31 | private List interpreters; 32 | 33 | public InterpreterSettingsList(String id, String name, 34 | List interpreters, boolean selected) { 35 | this.id = id; 36 | this.name = name; 37 | this.interpreters = interpreters; 38 | this.selected = selected; 39 | } 40 | } 41 | -------------------------------------------------------------------------------- /hopsworks-api/src/main/java/io/hops/hopsworks/api/zeppelin/util/ExceptionUtils.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed to the Apache Software Foundation (ASF) under one or more 3 | * contributor license agreements. See the NOTICE file distributed with 4 | * this work for additional information regarding copyright ownership. 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 6 | * (the "License"); you may not use this file except in compliance with 7 | * the License. You may obtain a copy of the License at 8 | * 9 | * http://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | package io.hops.hopsworks.api.zeppelin.util; 18 | 19 | import io.hops.hopsworks.api.zeppelin.server.JsonResponse; 20 | import javax.ws.rs.core.Response.Status; 21 | 22 | 23 | /** 24 | * Utility method for exception in rest api. 25 | * 26 | */ 27 | public class ExceptionUtils { 28 | 29 | public static javax.ws.rs.core.Response jsonResponse(Status status) { 30 | return new JsonResponse<>(status).build(); 31 | } 32 | 33 | public static javax.ws.rs.core.Response jsonResponseContent(Status status, 34 | String message) { 35 | return new JsonResponse<>(status, message).build(); 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /hopsworks-api/src/main/resources/META-INF/spring.handlers: -------------------------------------------------------------------------------- 1 | # 2 | # Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | # 4 | # Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | # software and associated documentation files (the "Software"), to deal in the Software 6 | # without restriction, including without limitation the rights to use, copy, modify, merge, 7 | # publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | # persons to whom the Software is furnished to do so, subject to the following conditions: 9 | # 10 | # The above copyright notice and this permission notice shall be included in all copies or 11 | # substantial portions of the Software. 12 | # 13 | # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | # BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | # NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | # DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | # 19 | # 20 | 21 | http\://membrane-soa.org/war/1/=com.predic8.membrane.servlet.config.spring.NamespaceHandler 22 | -------------------------------------------------------------------------------- /hopsworks-api/src/main/resources/META-INF/spring.schemas: -------------------------------------------------------------------------------- 1 | # 2 | # Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | # 4 | # Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | # software and associated documentation files (the "Software"), to deal in the Software 6 | # without restriction, including without limitation the rights to use, copy, modify, merge, 7 | # publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | # persons to whom the Software is furnished to do so, subject to the following conditions: 9 | # 10 | # The above copyright notice and this permission notice shall be included in all copies or 11 | # substantial portions of the Software. 12 | # 13 | # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | # BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | # NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | # DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | # 19 | # 20 | 21 | http\://membrane-soa.org/schemas/war-1.xsd=com/predic8/membrane/servlet/config/spring/router-conf.xsd -------------------------------------------------------------------------------- /hopsworks-ca/src/main/java/io/hops/hopsworks/ca/api/annotation/AllowCORS.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | * 4 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | * software and associated documentation files (the "Software"), to deal in the Software 6 | * without restriction, including without limitation the rights to use, copy, modify, merge, 7 | * publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | * persons to whom the Software is furnished to do so, subject to the following conditions: 9 | * 10 | * The above copyright notice and this permission notice shall be included in all copies or 11 | * substantial portions of the Software. 12 | * 13 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | * 19 | */ 20 | 21 | package io.hops.hopsworks.ca.api.annotation; 22 | 23 | import java.lang.annotation.ElementType; 24 | import java.lang.annotation.Retention; 25 | import java.lang.annotation.RetentionPolicy; 26 | import java.lang.annotation.Target; 27 | import javax.ws.rs.NameBinding; 28 | 29 | @NameBinding 30 | @Target({ ElementType.TYPE, ElementType.METHOD }) 31 | @Retention(RetentionPolicy.RUNTIME) 32 | public @interface AllowCORS { 33 | 34 | } -------------------------------------------------------------------------------- /hopsworks-ca/src/main/java/io/hops/hopsworks/ca/apiV2/annotation/AllowCORS.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | * 4 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | * software and associated documentation files (the "Software"), to deal in the Software 6 | * without restriction, including without limitation the rights to use, copy, modify, merge, 7 | * publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | * persons to whom the Software is furnished to do so, subject to the following conditions: 9 | * 10 | * The above copyright notice and this permission notice shall be included in all copies or 11 | * substantial portions of the Software. 12 | * 13 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | * 19 | */ 20 | 21 | package io.hops.hopsworks.ca.apiV2.annotation; 22 | 23 | import java.lang.annotation.ElementType; 24 | import java.lang.annotation.Retention; 25 | import java.lang.annotation.RetentionPolicy; 26 | import java.lang.annotation.Target; 27 | import javax.ws.rs.NameBinding; 28 | 29 | @NameBinding 30 | @Target({ ElementType.TYPE, ElementType.METHOD }) 31 | @Retention(RetentionPolicy.RUNTIME) 32 | public @interface AllowCORS { 33 | 34 | } -------------------------------------------------------------------------------- /hopsworks-cluster/src/main/webapp/.bowerrc: -------------------------------------------------------------------------------- 1 | { 2 | "directory": "vendor", 3 | "registry": "https://registry.bower.io" 4 | } 5 | -------------------------------------------------------------------------------- /hopsworks-cluster/src/main/webapp/bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "cluster-registration", 3 | "description": "hopsworks cluster registration", 4 | "main": "index.js", 5 | "authors": [ 6 | "ErmiasG" 7 | ], 8 | "license": "Apache-2.0", 9 | "homepage": "https://github.com/AlexHopsworks/hopsworks", 10 | "ignore": [ 11 | "**/.*", 12 | "node_modules", 13 | "bower_components", 14 | "src/main/webapp/vendor", 15 | "test", 16 | "tests" 17 | ], 18 | "dependencies": { 19 | "bootstrap": "^3.3.7", 20 | "angular": "1.6.7", 21 | "angular-route": "^1.6.7", 22 | "angular-loader": "^1.6.7", 23 | "angular-mocks": "^1.6.7", 24 | "angular-bootstrap": "^2.5.0", 25 | "components-font-awesome": "^4.7.0" 26 | }, 27 | "resolutions": { 28 | "angular": "1.6.7" 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /hopsworks-cluster/src/main/webapp/css/main.css: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | * 4 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | * software and associated documentation files (the "Software"), to deal in the Software 6 | * without restriction, including without limitation the rights to use, copy, modify, merge, 7 | * publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | * persons to whom the Software is furnished to do so, subject to the following conditions: 9 | * 10 | * The above copyright notice and this permission notice shall be included in all copies or 11 | * substantial portions of the Software. 12 | * 13 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | * 19 | */ 20 | 21 | body { 22 | background-image: url("../img/network.png"); 23 | background-color: #8ec3eb; 24 | overflow-x: hidden; 25 | } 26 | 27 | .center { 28 | margin: auto; 29 | width: 50%; 30 | padding: 10px; 31 | text-align: center; 32 | color: #fff; 33 | } 34 | 35 | .alert { 36 | overflow-x: auto !important; 37 | } 38 | -------------------------------------------------------------------------------- /hopsworks-cluster/src/main/webapp/img/network.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dc-sics/hopsworks/750106ec1fb966a78181dc5d65bb58310edc865a/hopsworks-cluster/src/main/webapp/img/network.png -------------------------------------------------------------------------------- /hopsworks-cluster/src/main/webapp/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "cluster-registration", 3 | "version": "1.0.0", 4 | "description": "hopsworks cluster registration", 5 | "main": "index.js", 6 | "devDependencies": { 7 | "bower": "^1.3.1", 8 | "http-server": "^0.6.1", 9 | "karma": "~0.12", 10 | "karma-chrome-launcher": "^0.1.4", 11 | "karma-firefox-launcher": "^0.1.3", 12 | "karma-jasmine": "^0.1.5", 13 | "karma-junit-reporter": "^0.2.2", 14 | "protractor": "~0.20.1", 15 | "shelljs": "^0.2.6" 16 | }, 17 | "scripts": { 18 | "postinstall": "bower install", 19 | "prestart": "npm install", 20 | "clean": "rm -rf node_modules && rm -rf vendor", 21 | "start": "http-server . -a localhost -p 8000", 22 | "pretest": "npm install", 23 | "test": "karma start src/test/javascript/karma.conf.js", 24 | "test-single-run": "karma start src/test/javascript/karma.conf.js --single-run", 25 | "preupdate-webdriver": "npm install", 26 | "update-webdriver": "webdriver-manager update", 27 | "preprotractor": "npm run update-webdriver", 28 | "update-index-async": "node -e \"require('shelljs/global'); sed('-i', /\\/\\/@@NG_LOADER_START@@[\\s\\S]*\\/\\/@@NG_LOADER_END@@/, '//@@NG_LOADER_START@@\\n' + cat('src/main/webapp/vendor/angular-loader/angular-loader.min.js') + '\\n//@@NG_LOADER_END@@', 'src/main/webapp/index.html');\"" 29 | }, 30 | "repository": { 31 | "type": "git", 32 | "url": "https://github.com/hopshadoop/hopsworks.git" 33 | }, 34 | "author": "ErmiasG", 35 | "license": "Apache-2.0", 36 | "bugs": { 37 | "url": "https://github.com/hopshadoop/hopsworks/issues" 38 | }, 39 | "homepage": "https://github.com/hopshadoop/hopsworks#readme" 40 | } 41 | -------------------------------------------------------------------------------- /hopsworks-common/src/main/java/io/hops/hopsworks/common/constants/auth/AllowedRoles.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | * 4 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | * software and associated documentation files (the "Software"), to deal in the Software 6 | * without restriction, including without limitation the rights to use, copy, modify, merge, 7 | * publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | * persons to whom the Software is furnished to do so, subject to the following conditions: 9 | * 10 | * The above copyright notice and this permission notice shall be included in all copies or 11 | * substantial portions of the Software. 12 | * 13 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | * 19 | */ 20 | 21 | package io.hops.hopsworks.common.constants.auth; 22 | 23 | public class AllowedRoles { 24 | 25 | public static final String ALL = "ALL"; 26 | public static final String DATA_OWNER = "Data owner"; 27 | public static final String DATA_SCIENTIST = "Data scientist"; 28 | } 29 | -------------------------------------------------------------------------------- /hopsworks-common/src/main/java/io/hops/hopsworks/common/dao/dataset/DatasetPermissions.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | * 4 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | * software and associated documentation files (the "Software"), to deal in the Software 6 | * without restriction, including without limitation the rights to use, copy, modify, merge, 7 | * publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | * persons to whom the Software is furnished to do so, subject to the following conditions: 9 | * 10 | * The above copyright notice and this permission notice shall be included in all copies or 11 | * substantial portions of the Software. 12 | * 13 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | * 19 | */ 20 | 21 | package io.hops.hopsworks.common.dao.dataset; 22 | 23 | /** 24 | * User settable permissions for Datasets. 25 | * 26 | */ 27 | public enum DatasetPermissions { 28 | GROUP_WRITABLE_SB, //1770 29 | GROUP_WRITABLE, //770 30 | OWNER_ONLY //750 31 | } 32 | -------------------------------------------------------------------------------- /hopsworks-common/src/main/java/io/hops/hopsworks/common/dao/dataset/DatasetType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | * 4 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | * software and associated documentation files (the "Software"), to deal in the Software 6 | * without restriction, including without limitation the rights to use, copy, modify, merge, 7 | * publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | * persons to whom the Software is furnished to do so, subject to the following conditions: 9 | * 10 | * The above copyright notice and this permission notice shall be included in all copies or 11 | * substantial portions of the Software. 12 | * 13 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | * 19 | */ 20 | 21 | package io.hops.hopsworks.common.dao.dataset; 22 | 23 | public enum DatasetType { 24 | DATASET, 25 | HIVEDB 26 | } 27 | -------------------------------------------------------------------------------- /hopsworks-common/src/main/java/io/hops/hopsworks/common/dao/host/Health.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | * 4 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | * software and associated documentation files (the "Software"), to deal in the Software 6 | * without restriction, including without limitation the rights to use, copy, modify, merge, 7 | * publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | * persons to whom the Software is furnished to do so, subject to the following conditions: 9 | * 10 | * The above copyright notice and this permission notice shall be included in all copies or 11 | * substantial portions of the Software. 12 | * 13 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | * 19 | */ 20 | 21 | package io.hops.hopsworks.common.dao.host; 22 | 23 | public enum Health { 24 | Good, 25 | Bad 26 | } 27 | -------------------------------------------------------------------------------- /hopsworks-common/src/main/java/io/hops/hopsworks/common/dao/host/Status.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | * 4 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | * software and associated documentation files (the "Software"), to deal in the Software 6 | * without restriction, including without limitation the rights to use, copy, modify, merge, 7 | * publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | * persons to whom the Software is furnished to do so, subject to the following conditions: 9 | * 10 | * The above copyright notice and this permission notice shall be included in all copies or 11 | * substantial portions of the Software. 12 | * 13 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | * 19 | */ 20 | 21 | package io.hops.hopsworks.common.dao.host; 22 | 23 | public enum Status { 24 | 25 | Started, 26 | Stopped, 27 | Failed, 28 | TimedOut, 29 | None 30 | } 31 | -------------------------------------------------------------------------------- /hopsworks-common/src/main/java/io/hops/hopsworks/common/dao/jobs/description/AppIdDTO.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | * 4 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | * software and associated documentation files (the "Software"), to deal in the Software 6 | * without restriction, including without limitation the rights to use, copy, modify, merge, 7 | * publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | * persons to whom the Software is furnished to do so, subject to the following conditions: 9 | * 10 | * The above copyright notice and this permission notice shall be included in all copies or 11 | * substantial portions of the Software. 12 | * 13 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | * 19 | */ 20 | 21 | package io.hops.hopsworks.common.dao.jobs.description; 22 | 23 | import javax.xml.bind.annotation.XmlRootElement; 24 | 25 | @XmlRootElement 26 | public class AppIdDTO { 27 | 28 | String id; 29 | 30 | public AppIdDTO() { 31 | } 32 | 33 | public AppIdDTO(String id) { 34 | this.id = id; 35 | } 36 | 37 | public String getId() { 38 | return id; 39 | } 40 | 41 | public void setId(String id) { 42 | this.id = id; 43 | } 44 | 45 | } 46 | -------------------------------------------------------------------------------- /hopsworks-common/src/main/java/io/hops/hopsworks/common/dao/kafka/SchemaCompatiblityCheck.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | * 4 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | * software and associated documentation files (the "Software"), to deal in the Software 6 | * without restriction, including without limitation the rights to use, copy, modify, merge, 7 | * publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | * persons to whom the Software is furnished to do so, subject to the following conditions: 9 | * 10 | * The above copyright notice and this permission notice shall be included in all copies or 11 | * substantial portions of the Software. 12 | * 13 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | * 19 | */ 20 | 21 | package io.hops.hopsworks.common.dao.kafka; 22 | 23 | public enum SchemaCompatiblityCheck { 24 | INVALID, 25 | COMPATIBLE, 26 | INCOMPATIBLE 27 | } 28 | -------------------------------------------------------------------------------- /hopsworks-common/src/main/java/io/hops/hopsworks/common/dao/log/meta/MetaType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | * 4 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | * software and associated documentation files (the "Software"), to deal in the Software 6 | * without restriction, including without limitation the rights to use, copy, modify, merge, 7 | * publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | * persons to whom the Software is furnished to do so, subject to the following conditions: 9 | * 10 | * The above copyright notice and this permission notice shall be included in all copies or 11 | * substantial portions of the Software. 12 | * 13 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | * 19 | */ 20 | 21 | package io.hops.hopsworks.common.dao.log.meta; 22 | 23 | public enum MetaType { 24 | SchemaBased, 25 | SchemaLess 26 | } 27 | -------------------------------------------------------------------------------- /hopsworks-common/src/main/java/io/hops/hopsworks/common/dao/log/operation/OperationOn.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | * 4 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | * software and associated documentation files (the "Software"), to deal in the Software 6 | * without restriction, including without limitation the rights to use, copy, modify, merge, 7 | * publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | * persons to whom the Software is furnished to do so, subject to the following conditions: 9 | * 10 | * The above copyright notice and this permission notice shall be included in all copies or 11 | * substantial portions of the Software. 12 | * 13 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | * 19 | */ 20 | 21 | package io.hops.hopsworks.common.dao.log.operation; 22 | 23 | public enum OperationOn { 24 | Dataset, 25 | Project, 26 | Schema 27 | } 28 | -------------------------------------------------------------------------------- /hopsworks-common/src/main/java/io/hops/hopsworks/common/dao/log/operation/OperationType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | * 4 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | * software and associated documentation files (the "Software"), to deal in the Software 6 | * without restriction, including without limitation the rights to use, copy, modify, merge, 7 | * publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | * persons to whom the Software is furnished to do so, subject to the following conditions: 9 | * 10 | * The above copyright notice and this permission notice shall be included in all copies or 11 | * substantial portions of the Software. 12 | * 13 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | * 19 | */ 20 | 21 | package io.hops.hopsworks.common.dao.log.operation; 22 | 23 | public enum OperationType { 24 | Add, 25 | Delete, 26 | Update 27 | } 28 | -------------------------------------------------------------------------------- /hopsworks-common/src/main/java/io/hops/hopsworks/common/dao/project/PaymentType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | * 4 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | * software and associated documentation files (the "Software"), to deal in the Software 6 | * without restriction, including without limitation the rights to use, copy, modify, merge, 7 | * publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | * persons to whom the Software is furnished to do so, subject to the following conditions: 9 | * 10 | * The above copyright notice and this permission notice shall be included in all copies or 11 | * substantial portions of the Software. 12 | * 13 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | * 19 | */ 20 | 21 | package io.hops.hopsworks.common.dao.project; 22 | 23 | import javax.xml.bind.annotation.XmlRootElement; 24 | 25 | @XmlRootElement 26 | public enum PaymentType { 27 | PREPAID, 28 | NOLIMIT 29 | } 30 | -------------------------------------------------------------------------------- /hopsworks-common/src/main/java/io/hops/hopsworks/common/dao/project/service/ProjectServicesConverter.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | * 4 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | * software and associated documentation files (the "Software"), to deal in the Software 6 | * without restriction, including without limitation the rights to use, copy, modify, merge, 7 | * publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | * persons to whom the Software is furnished to do so, subject to the following conditions: 9 | * 10 | * The above copyright notice and this permission notice shall be included in all copies or 11 | * substantial portions of the Software. 12 | * 13 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | * 19 | */ 20 | 21 | package io.hops.hopsworks.common.dao.project.service; 22 | 23 | import javax.faces.convert.EnumConverter; 24 | import javax.faces.convert.FacesConverter; 25 | 26 | @FacesConverter(value = "projectServiceConverter") 27 | public class ProjectServicesConverter extends EnumConverter { 28 | 29 | public ProjectServicesConverter() { 30 | super(ProjectServiceEnum.class); 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /hopsworks-common/src/main/java/io/hops/hopsworks/common/dao/project/team/ProjectRoleTypes.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | * 4 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | * software and associated documentation files (the "Software"), to deal in the Software 6 | * without restriction, including without limitation the rights to use, copy, modify, merge, 7 | * publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | * persons to whom the Software is furnished to do so, subject to the following conditions: 9 | * 10 | * The above copyright notice and this permission notice shall be included in all copies or 11 | * substantial portions of the Software. 12 | * 13 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | * 19 | */ 20 | 21 | package io.hops.hopsworks.common.dao.project.team; 22 | 23 | public enum ProjectRoleTypes { 24 | 25 | DATA_OWNER("Data owner"), 26 | DATA_SCIENTIST("Data scientist"), 27 | UNDER_REMOVAL("Under removal"); 28 | 29 | String role; 30 | 31 | ProjectRoleTypes(String role) { 32 | this.role = role; 33 | } 34 | 35 | public String getRole() { 36 | return this.role; 37 | } 38 | 39 | } 40 | -------------------------------------------------------------------------------- /hopsworks-common/src/main/java/io/hops/hopsworks/common/dao/tfserving/TransformGraphDTO.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | * 4 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | * software and associated documentation files (the "Software"), to deal in the Software 6 | * without restriction, including without limitation the rights to use, copy, modify, merge, 7 | * publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | * persons to whom the Software is furnished to do so, subject to the following conditions: 9 | * 10 | * The above copyright notice and this permission notice shall be included in all copies or 11 | * substantial portions of the Software. 12 | * 13 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | * 19 | */ 20 | 21 | package io.hops.hopsworks.common.dao.tfserving; 22 | 23 | import javax.xml.bind.annotation.XmlRootElement; 24 | 25 | @XmlRootElement 26 | public class TransformGraphDTO { 27 | 28 | private int tfServingId; 29 | 30 | } 31 | -------------------------------------------------------------------------------- /hopsworks-common/src/main/java/io/hops/hopsworks/common/dao/user/RoleAction.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | * 4 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | * software and associated documentation files (the "Software"), to deal in the Software 6 | * without restriction, including without limitation the rights to use, copy, modify, merge, 7 | * publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | * persons to whom the Software is furnished to do so, subject to the following conditions: 9 | * 10 | * The above copyright notice and this permission notice shall be included in all copies or 11 | * substantial portions of the Software. 12 | * 13 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | * 19 | */ 20 | 21 | package io.hops.hopsworks.common.dao.user; 22 | 23 | import javax.xml.bind.annotation.XmlEnum; 24 | import javax.xml.bind.annotation.XmlEnumValue; 25 | import javax.xml.bind.annotation.XmlType; 26 | 27 | @XmlType(name = "bbc-group-action") 28 | @XmlEnum 29 | public enum RoleAction { 30 | @XmlEnumValue("ADD") 31 | ADD, 32 | 33 | @XmlEnumValue("REMOVE") 34 | REMOVE; 35 | } 36 | -------------------------------------------------------------------------------- /hopsworks-common/src/main/java/io/hops/hopsworks/common/dao/user/security/audit/UserAuditActions.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | * 4 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | * software and associated documentation files (the "Software"), to deal in the Software 6 | * without restriction, including without limitation the rights to use, copy, modify, merge, 7 | * publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | * persons to whom the Software is furnished to do so, subject to the following conditions: 9 | * 10 | * The above copyright notice and this permission notice shall be included in all copies or 11 | * substantial portions of the Software. 12 | * 13 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | * 19 | */ 20 | 21 | package io.hops.hopsworks.common.dao.user.security.audit; 22 | 23 | public enum UserAuditActions { 24 | 25 | LOGIN("LOGIN"), 26 | LOGOUT("LOGOUT"), 27 | UNAUTHORIZED("UNAUTHORIZED ACCESS"), 28 | SUCCESS("SUCCESS"), 29 | FAILED("FAILED"), 30 | ABORTED("ABORTED"), 31 | ALL("ALL"); 32 | 33 | private final String value; 34 | 35 | UserAuditActions(String value) { this.value = value; } 36 | 37 | @Override 38 | public String toString() { return value; } 39 | } 40 | -------------------------------------------------------------------------------- /hopsworks-common/src/main/java/io/hops/hopsworks/common/exception/CryptoPasswordNotFoundException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | * 4 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | * software and associated documentation files (the "Software"), to deal in the Software 6 | * without restriction, including without limitation the rights to use, copy, modify, merge, 7 | * publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | * persons to whom the Software is furnished to do so, subject to the following conditions: 9 | * 10 | * The above copyright notice and this permission notice shall be included in all copies or 11 | * substantial portions of the Software. 12 | * 13 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | * 19 | */ 20 | package io.hops.hopsworks.common.exception; 21 | 22 | public class CryptoPasswordNotFoundException extends Exception { 23 | public CryptoPasswordNotFoundException(String message) { 24 | super(message); 25 | } 26 | 27 | public CryptoPasswordNotFoundException(Throwable cause) { 28 | super(cause); 29 | } 30 | 31 | public CryptoPasswordNotFoundException(String message, Throwable cause) { 32 | super(message, cause); 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /hopsworks-common/src/main/java/io/hops/hopsworks/common/exception/EncryptionMasterPasswordException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | * 4 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | * software and associated documentation files (the "Software"), to deal in the Software 6 | * without restriction, including without limitation the rights to use, copy, modify, merge, 7 | * publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | * persons to whom the Software is furnished to do so, subject to the following conditions: 9 | * 10 | * The above copyright notice and this permission notice shall be included in all copies or 11 | * substantial portions of the Software. 12 | * 13 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | * 19 | */ 20 | package io.hops.hopsworks.common.exception; 21 | 22 | public class EncryptionMasterPasswordException extends Exception { 23 | public EncryptionMasterPasswordException(String message) { 24 | super(message); 25 | } 26 | 27 | public EncryptionMasterPasswordException(Throwable cause) { 28 | super(cause); 29 | } 30 | 31 | public EncryptionMasterPasswordException(String message, Throwable cause) { 32 | super(message, cause); 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /hopsworks-common/src/main/java/io/hops/hopsworks/common/exception/JobCreationException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | * 4 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | * software and associated documentation files (the "Software"), to deal in the Software 6 | * without restriction, including without limitation the rights to use, copy, modify, merge, 7 | * publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | * persons to whom the Software is furnished to do so, subject to the following conditions: 9 | * 10 | * The above copyright notice and this permission notice shall be included in all copies or 11 | * substantial portions of the Software. 12 | * 13 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | * 19 | */ 20 | package io.hops.hopsworks.common.exception; 21 | 22 | public class JobCreationException extends Exception { 23 | 24 | public JobCreationException(String message) { 25 | super(message); 26 | } 27 | 28 | public JobCreationException(Throwable cause) { 29 | super(cause); 30 | } 31 | 32 | public JobCreationException(String message, Throwable cause) { 33 | super(message, cause); 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /hopsworks-common/src/main/java/io/hops/hopsworks/common/exception/ProjectInternalFoldersFailedException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | * 4 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | * software and associated documentation files (the "Software"), to deal in the Software 6 | * without restriction, including without limitation the rights to use, copy, modify, merge, 7 | * publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | * persons to whom the Software is furnished to do so, subject to the following conditions: 9 | * 10 | * The above copyright notice and this permission notice shall be included in all copies or 11 | * substantial portions of the Software. 12 | * 13 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | * 19 | */ 20 | 21 | package io.hops.hopsworks.common.exception; 22 | 23 | public class ProjectInternalFoldersFailedException extends Exception { 24 | 25 | public ProjectInternalFoldersFailedException(String message, Throwable e) { 26 | super(message, e); 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /hopsworks-common/src/main/java/io/hops/hopsworks/common/jobs/CancellableJob.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | * 4 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | * software and associated documentation files (the "Software"), to deal in the Software 6 | * without restriction, including without limitation the rights to use, copy, modify, merge, 7 | * publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | * persons to whom the Software is furnished to do so, subject to the following conditions: 9 | * 10 | * The above copyright notice and this permission notice shall be included in all copies or 11 | * substantial portions of the Software. 12 | * 13 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | * 19 | */ 20 | 21 | package io.hops.hopsworks.common.jobs; 22 | 23 | /** 24 | * Allows a job that has been submitted to be cancelled. The CancellableJob 25 | * is responsible of unregistering with the RunningJobTracker upon cancellation. 26 | */ 27 | public interface CancellableJob { 28 | 29 | /** 30 | * Cancel the running job. 31 | *

32 | * @throws Exception 33 | */ 34 | public void cancelJob() throws Exception; 35 | } 36 | -------------------------------------------------------------------------------- /hopsworks-common/src/main/java/io/hops/hopsworks/common/jobs/flink/YarnClusterDescriptor.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | * 4 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | * software and associated documentation files (the "Software"), to deal in the Software 6 | * without restriction, including without limitation the rights to use, copy, modify, merge, 7 | * publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | * persons to whom the Software is furnished to do so, subject to the following conditions: 9 | * 10 | * The above copyright notice and this permission notice shall be included in all copies or 11 | * substantial portions of the Software. 12 | * 13 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | * 19 | */ 20 | package io.hops.hopsworks.common.jobs.flink; 21 | 22 | import org.apache.flink.yarn.YarnApplicationMasterRunner; 23 | 24 | /** 25 | * Default implementation of {@link AbstractYarnClusterDescriptor} which starts 26 | * an {@link YarnApplicationMasterRunner}. 27 | */ 28 | public class YarnClusterDescriptor extends AbstractYarnClusterDescriptor { 29 | 30 | @Override 31 | protected Class getApplicationMasterClass() { 32 | return YarnApplicationMasterRunner.class; 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /hopsworks-common/src/main/java/io/hops/hopsworks/common/jobs/jobhistory/JobHeuristicDetailsComparator.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | * 4 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | * software and associated documentation files (the "Software"), to deal in the Software 6 | * without restriction, including without limitation the rights to use, copy, modify, merge, 7 | * publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | * persons to whom the Software is furnished to do so, subject to the following conditions: 9 | * 10 | * The above copyright notice and this permission notice shall be included in all copies or 11 | * substantial portions of the Software. 12 | * 13 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | * 19 | */ 20 | 21 | package io.hops.hopsworks.common.jobs.jobhistory; 22 | 23 | import java.util.Comparator; 24 | 25 | public class JobHeuristicDetailsComparator implements 26 | Comparator { 27 | 28 | @Override 29 | public int compare(JobHeuristicDetailsDTO t, JobHeuristicDetailsDTO t1) { 30 | 31 | return Long.compare(t.getExecutionTime(), t1.getExecutionTime()); 32 | 33 | } 34 | 35 | } 36 | -------------------------------------------------------------------------------- /hopsworks-common/src/main/java/io/hops/hopsworks/common/jobs/yarn/AnacondaProperties.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | * 4 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | * software and associated documentation files (the "Software"), to deal in the Software 6 | * without restriction, including without limitation the rights to use, copy, modify, merge, 7 | * publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | * persons to whom the Software is furnished to do so, subject to the following conditions: 9 | * 10 | * The above copyright notice and this permission notice shall be included in all copies or 11 | * substantial portions of the Software. 12 | * 13 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | * 19 | */ 20 | 21 | package io.hops.hopsworks.common.jobs.yarn; 22 | 23 | /** 24 | * 25 | *

26 | */ 27 | public class AnacondaProperties { 28 | 29 | private String envPath; 30 | 31 | public AnacondaProperties(String envPath) { 32 | this.envPath = envPath; 33 | } 34 | 35 | public String getEnvPath() { 36 | return envPath; 37 | } 38 | 39 | public void setEnvPath(String envPath) { 40 | this.envPath = envPath; 41 | } 42 | 43 | } 44 | -------------------------------------------------------------------------------- /hopsworks-common/src/main/java/io/hops/hopsworks/common/jobs/yarn/YarnSetupCommand.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | * 4 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | * software and associated documentation files (the "Software"), to deal in the Software 6 | * without restriction, including without limitation the rights to use, copy, modify, merge, 7 | * publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | * persons to whom the Software is furnished to do so, subject to the following conditions: 9 | * 10 | * The above copyright notice and this permission notice shall be included in all copies or 11 | * substantial portions of the Software. 12 | * 13 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | * 19 | */ 20 | 21 | package io.hops.hopsworks.common.jobs.yarn; 22 | 23 | public abstract class YarnSetupCommand { 24 | 25 | public abstract void execute(YarnRunner r); 26 | } 27 | -------------------------------------------------------------------------------- /hopsworks-common/src/main/java/io/hops/hopsworks/common/metadata/exception/DatabaseException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | * 4 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | * software and associated documentation files (the "Software"), to deal in the Software 6 | * without restriction, including without limitation the rights to use, copy, modify, merge, 7 | * publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | * persons to whom the Software is furnished to do so, subject to the following conditions: 9 | * 10 | * The above copyright notice and this permission notice shall be included in all copies or 11 | * substantial portions of the Software. 12 | * 13 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | * 19 | */ 20 | 21 | package io.hops.hopsworks.common.metadata.exception; 22 | 23 | public class DatabaseException extends Exception { 24 | 25 | private String exception; 26 | 27 | public DatabaseException(String exception) { 28 | super(exception); 29 | } 30 | 31 | public DatabaseException(String exception, Throwable throwable) { 32 | super(exception, throwable); 33 | } 34 | 35 | @Override 36 | public String getMessage() { 37 | return this.exception; 38 | } 39 | } 40 | -------------------------------------------------------------------------------- /hopsworks-common/src/main/java/io/hops/hopsworks/common/security/CertificateType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | * 4 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | * software and associated documentation files (the "Software"), to deal in the Software 6 | * without restriction, including without limitation the rights to use, copy, modify, merge, 7 | * publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | * persons to whom the Software is furnished to do so, subject to the following conditions: 9 | * 10 | * The above copyright notice and this permission notice shall be included in all copies or 11 | * substantial portions of the Software. 12 | * 13 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | * 19 | */ 20 | 21 | package io.hops.hopsworks.common.security; 22 | 23 | public enum CertificateType { 24 | PROJECT_USER("ProjectUser"), 25 | HOST("Host"), 26 | APP("App"), 27 | DELA("Dela"); 28 | 29 | private final String certType; 30 | 31 | CertificateType(String certType) { 32 | this.certType = certType; 33 | } 34 | 35 | public String toString() { 36 | return certType; 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /hopsworks-common/src/main/java/io/hops/hopsworks/common/util/templates/ConfigReplacementPolicy.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | * 4 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | * software and associated documentation files (the "Software"), to deal in the Software 6 | * without restriction, including without limitation the rights to use, copy, modify, merge, 7 | * publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | * persons to whom the Software is furnished to do so, subject to the following conditions: 9 | * 10 | * The above copyright notice and this permission notice shall be included in all copies or 11 | * substantial portions of the Software. 12 | * 13 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | * 19 | */ 20 | package io.hops.hopsworks.common.util.templates; 21 | 22 | /** 23 | * Interface for configuration templates replacement policies 24 | */ 25 | public interface ConfigReplacementPolicy { 26 | String replace(String originalValue, String userValue); 27 | } 28 | -------------------------------------------------------------------------------- /hopsworks-common/src/main/java/io/hops/hopsworks/common/util/templates/IgnoreConfigReplacementPolicy.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | * 4 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | * software and associated documentation files (the "Software"), to deal in the Software 6 | * without restriction, including without limitation the rights to use, copy, modify, merge, 7 | * publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | * persons to whom the Software is furnished to do so, subject to the following conditions: 9 | * 10 | * The above copyright notice and this permission notice shall be included in all copies or 11 | * substantial portions of the Software. 12 | * 13 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | * 19 | */ 20 | package io.hops.hopsworks.common.util.templates; 21 | 22 | /** 23 | * Replacement policy for configuration templates that ignores the new value. 24 | */ 25 | public class IgnoreConfigReplacementPolicy implements ConfigReplacementPolicy { 26 | @Override 27 | public String replace(String originalValue, String userValue) { 28 | return originalValue; 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /hopsworks-common/src/main/java/io/hops/hopsworks/common/util/templates/OverwriteConfigReplacementPolicy.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | * 4 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | * software and associated documentation files (the "Software"), to deal in the Software 6 | * without restriction, including without limitation the rights to use, copy, modify, merge, 7 | * publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | * persons to whom the Software is furnished to do so, subject to the following conditions: 9 | * 10 | * The above copyright notice and this permission notice shall be included in all copies or 11 | * substantial portions of the Software. 12 | * 13 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | * 19 | */ 20 | package io.hops.hopsworks.common.util.templates; 21 | 22 | /** 23 | * Replacement policy for configuration templates that completely overwrites the old value. 24 | */ 25 | public class OverwriteConfigReplacementPolicy implements ConfigReplacementPolicy { 26 | @Override 27 | public String replace(String originalValue, String userValue) { 28 | return userValue; 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /hopsworks-common/src/main/resources/META-INF/batch-jobs/authorizedKeysJob.xml: -------------------------------------------------------------------------------- 1 | 2 | 21 | 22 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | -------------------------------------------------------------------------------- /hopsworks-common/src/main/resources/io/hops/jupyter/custom_template.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | * 4 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | * software and associated documentation files (the "Software"), to deal in the Software 6 | * without restriction, including without limitation the rights to use, copy, modify, merge, 7 | * publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | * persons to whom the Software is furnished to do so, subject to the following conditions: 9 | * 10 | * The above copyright notice and this permission notice shall be included in all copies or 11 | * substantial portions of the Software. 12 | * 13 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | * 19 | */ 20 | 21 | // Put jupyter in single-tab mode - needed as it is embedded in an iframe 22 | // http://jupyter-notebook.readthedocs.io/en/latest/public_server.html#notebook-server-security 23 | // http://jupyter.readthedocs.io/en/latest/projects/jupyter-directories.html 24 | // 25 | 26 | // custom.js file to set `Jupyter._target` to `_self`.prototype 27 | // define(['base/js/namespace'], function(Jupyter){ 28 | // Jupyter._target = '_self'; 29 | //}); 30 | -------------------------------------------------------------------------------- /hopsworks-common/src/main/resources/io/hops/jupyter/kernel_template.json: -------------------------------------------------------------------------------- 1 | { 2 | "display_name": "python-%%hdfs_user%%", 3 | "language": "python", 4 | "argv": [ 5 | "%%anaconda_home%%/bin/python", 6 | "-m", 7 | "ipykernel_launcher", 8 | "-f", 9 | "{connection_file}" 10 | ], 11 | "env": { 12 | "HADOOP_HOME": "%%hadoop_home%%", 13 | "HADOOP_HDFS_HOME": "%%hadoop_home%%", 14 | "HADOOP_CONF_DIR": "%%hadoop_home%%/etc/hadoop", 15 | "PDIR": "%%secret_dir%%", 16 | "HADOOP_USER_NAME": "%%hdfs_user%%", 17 | "LIBHDFS_OPTS": "-Xmx96m", 18 | "HADOOP_VERSION": "%%hadoop_version%%" 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /hopsworks-common/src/main/resources/io/hops/rstudio/environment_variables: -------------------------------------------------------------------------------- 1 | https://stat.ethz.ch/R-manual/R-devel/library/base/html/Startup.html 2 | 3 | 4 | 5 | R_PROFILE_USER 6 | 7 | R_ENVIRON - name of the site file 8 | R_ENVIRON_USER - name of the user 9 | 10 | 11 | R_HOME - set to the user private directory 12 | 13 | --no-init-file was given, R searches for a user profile 14 | 15 | 16 | You can use the .Rprofile.site file to run R commands for all users when their R session starts. 17 | -------------------------------------------------------------------------------- /hopsworks-common/src/main/resources/io/hops/rstudio/rserver_conf: -------------------------------------------------------------------------------- 1 | # /etc/rstudio/rserver.conf 2 | 3 | www-port=%%rstudio_port%% 4 | www-address=%%rstudio_ip%% 5 | 6 | #rsession-which-r=/bin/R 7 | 8 | rsession-ld-library-path=%%hadoop_home%%/lib/native:/usr/local/cuda/lib64:/lib64 9 | 10 | auth-required-user-group=rstudio_users -------------------------------------------------------------------------------- /hopsworks-common/src/main/resources/io/hops/rstudio/rsession_conf: -------------------------------------------------------------------------------- 1 | # /etc/rstudio/rsession.conf 2 | 3 | session-timeout-minutes=%%rstudio_session_timeout%% 4 | 5 | r-libs-user=~/R/packages 6 | 7 | r-cran-repos=https://mirrors.nics.utk.edu/cran/ -------------------------------------------------------------------------------- /hopsworks-common/src/main/resources/io/hops/rstudio/rstudio_users: -------------------------------------------------------------------------------- 1 | # /etc/rstudio/rstudio_users 2 | 3 | -------------------------------------------------------------------------------- /hopsworks-common/src/main/resources/io/hops/zeppelin/zeppelin_env_template.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | export MASTER=yarn 3 | export ZEPPELIN_JAVA_OPTS="" 4 | export SPARK_HOME=%%spark_dir%% 5 | export HADOOP_HOME=%%hadoop_dir%% 6 | export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop 7 | export HADOOP_HDFS_HOME=$HADOOP_HOME 8 | export HADOOP_USER_NAME=%%hadoop_username%% 9 | export JAVA_HOME=%%java_home%% 10 | export LD_LIBRARY_PATH=${HADOOP_HOME}/lib/native:${JAVA_HOME}/jre/lib/amd64/server:%%cuda_dir%%/lib64:/usr/local/lib:/usr/lib:%%ld_library_path%% 11 | export CLASSPATH=%%hadoop_classpath%% 12 | export SPARK_SUBMIT_OPTIONS="%%spark_options%%" 13 | 14 | # This is to get matplotlib to not try and use the local $DISPLAY 15 | export MPLBACKEND="agg" 16 | 17 | # These are setting the project-specific conda environment directory for python 18 | export PYSPARK_PYTHON=%%anaconda_env_dir%%/bin/python 19 | 20 | 21 | # https://community.hortonworks.com/questions/16436/cants-get-pyspark-interpreter-to-work-on-zeppelin.html 22 | # export PYTHONPATH=%%anaconda_env_dir%% 23 | export PYLIB=%%anaconda_env_dir%%/lib -------------------------------------------------------------------------------- /hopsworks-dela/src/main/java/io/hops/hopsworks/dela/TransferDela.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | * 4 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | * software and associated documentation files (the "Software"), to deal in the Software 6 | * without restriction, including without limitation the rights to use, copy, modify, merge, 7 | * publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | * persons to whom the Software is furnished to do so, subject to the following conditions: 9 | * 10 | * The above copyright notice and this permission notice shall be included in all copies or 11 | * substantial portions of the Software. 12 | * 13 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | * 19 | */ 20 | 21 | package io.hops.hopsworks.dela; 22 | 23 | public class TransferDela { 24 | public static final String CONTACT = "/vod/endpoint"; 25 | } 26 | -------------------------------------------------------------------------------- /hopsworks-dela/src/main/java/io/hops/hopsworks/dela/hopssite/HopsSiteExceptions.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | * 4 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | * software and associated documentation files (the "Software"), to deal in the Software 6 | * without restriction, including without limitation the rights to use, copy, modify, merge, 7 | * publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | * persons to whom the Software is furnished to do so, subject to the following conditions: 9 | * 10 | * The above copyright notice and this permission notice shall be included in all copies or 11 | * substantial portions of the Software. 12 | * 13 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | * 19 | */ 20 | 21 | package io.hops.hopsworks.dela.hopssite; 22 | 23 | public enum HopsSiteExceptions { 24 | ALREADY_REGISTERED; 25 | 26 | public boolean is(String msg) { 27 | if(this.name().toLowerCase().equals(msg.toLowerCase())) { 28 | return true; 29 | } 30 | return false; 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /hopsworks-dela/src/main/java/io/hops/hopsworks/dela/old_dto/ErrorDescJSON.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | * 4 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | * software and associated documentation files (the "Software"), to deal in the Software 6 | * without restriction, including without limitation the rights to use, copy, modify, merge, 7 | * publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | * persons to whom the Software is furnished to do so, subject to the following conditions: 9 | * 10 | * The above copyright notice and this permission notice shall be included in all copies or 11 | * substantial portions of the Software. 12 | * 13 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | * 19 | */ 20 | 21 | package io.hops.hopsworks.dela.old_dto; 22 | 23 | import javax.xml.bind.annotation.XmlRootElement; 24 | 25 | @XmlRootElement 26 | public class ErrorDescJSON { 27 | 28 | private String details; 29 | 30 | public ErrorDescJSON(String details) { 31 | this.details = details; 32 | } 33 | 34 | public ErrorDescJSON() { 35 | } 36 | 37 | public String getDetails() { 38 | return details; 39 | } 40 | 41 | public void setDetails(String details) { 42 | this.details = details; 43 | } 44 | } 45 | -------------------------------------------------------------------------------- /hopsworks-dela/src/main/java/io/hops/hopsworks/dela/old_dto/HopsResource.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | * 4 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | * software and associated documentation files (the "Software"), to deal in the Software 6 | * without restriction, including without limitation the rights to use, copy, modify, merge, 7 | * publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | * persons to whom the Software is furnished to do so, subject to the following conditions: 9 | * 10 | * The above copyright notice and this permission notice shall be included in all copies or 11 | * substantial portions of the Software. 12 | * 13 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | * 19 | */ 20 | 21 | package io.hops.hopsworks.dela.old_dto; 22 | 23 | public class HopsResource { 24 | 25 | private final int projectId; 26 | 27 | public HopsResource(int projectId) { 28 | this.projectId = projectId; 29 | } 30 | 31 | public int getProjectId() { 32 | return projectId; 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /hopsworks-dela/src/main/java/io/hops/hopsworks/dela/old_dto/RemoveTorrentDTO.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | * 4 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | * software and associated documentation files (the "Software"), to deal in the Software 6 | * without restriction, including without limitation the rights to use, copy, modify, merge, 7 | * publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | * persons to whom the Software is furnished to do so, subject to the following conditions: 9 | * 10 | * The above copyright notice and this permission notice shall be included in all copies or 11 | * substantial portions of the Software. 12 | * 13 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | * 19 | */ 20 | 21 | package io.hops.hopsworks.dela.old_dto; 22 | 23 | import javax.xml.bind.annotation.XmlRootElement; 24 | 25 | @XmlRootElement 26 | public class RemoveTorrentDTO { 27 | 28 | private String torrentId; 29 | 30 | public RemoveTorrentDTO() { 31 | } 32 | 33 | public String getTorrentId() { 34 | return torrentId; 35 | } 36 | 37 | public void setTorrentId(String torrentId) { 38 | this.torrentId = torrentId; 39 | } 40 | 41 | } 42 | -------------------------------------------------------------------------------- /hopsworks-dela/src/main/java/io/hops/hopsworks/dela/old_hopssite_dto/RateIdDTO.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | * 4 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | * software and associated documentation files (the "Software"), to deal in the Software 6 | * without restriction, including without limitation the rights to use, copy, modify, merge, 7 | * publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | * persons to whom the Software is furnished to do so, subject to the following conditions: 9 | * 10 | * The above copyright notice and this permission notice shall be included in all copies or 11 | * substantial portions of the Software. 12 | * 13 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | * 19 | */ 20 | 21 | package io.hops.hopsworks.dela.old_hopssite_dto; 22 | 23 | import javax.xml.bind.annotation.XmlRootElement; 24 | 25 | @XmlRootElement 26 | public class RateIdDTO { 27 | private Integer id; 28 | 29 | public RateIdDTO() { 30 | } 31 | 32 | public RateIdDTO(Integer id) { 33 | this.id = id; 34 | } 35 | 36 | public Integer getId() { 37 | return id; 38 | } 39 | 40 | public void setId(Integer id) { 41 | this.id = id; 42 | } 43 | } 44 | -------------------------------------------------------------------------------- /hopsworks-dela/src/main/resources/META-INF/MANIFEST.MF: -------------------------------------------------------------------------------- 1 | Manifest-Version: 1.0 2 | 3 | -------------------------------------------------------------------------------- /hopsworks-ear/src/main/application/META-INF/MANIFEST.MF: -------------------------------------------------------------------------------- 1 | Manifest-Version: 1.0 2 | 3 | -------------------------------------------------------------------------------- /hopsworks-ear/test/.env.example: -------------------------------------------------------------------------------- 1 | # Copy this to .env and update values 2 | WEB_HOST=hopslocal # Web host local or remote 3 | WEB_PORT=8080 # Web port local or remote 4 | DB_HOST=hopslocal # Database host local or remote 5 | DB_PORT=3306 # Database port local or remote 6 | PROJECT_DIR=/home/tkak/hops/hopsworks # where hopsworks project is. 7 | RSPEC_REPORT=/hopsworks-ear/target/test-report.html # where to put the report name should be test-report.html. 8 | HOPSWORKS_API=/hopsworks-api/api # The path to the rest api to be tested. 9 | HOPSWORKS_ADMIN=/hopsworks-admin/ # The path to hopsworks admin pages. 10 | LAUNCH_BROWSER=false # If set to true will launch test report in a browser 11 | 12 | # Only if local 13 | RSPEC_USER_DIR=/home/hopsworks/user/hopsworks-chef # The path to vagrant if local. 14 | 15 | # Only if remote 16 | RSPEC_SSH=true # If vagrant is remote or not. 17 | RSPEC_SSH_USER=vagrant # The user on the remote machine. 18 | RSPEC_SSH_HOST=hopslocal # The host where the remote vagrant is. 19 | RSPEC_SSH_PORT=10022 # The port where the remote vagrant is. 20 | RSPEC_SSH_USER_DIR=/home/username/hopsworks-chef # The path to vagrant in the remote machine. 21 | RSPEC_VAGRANT_HDFS_USER=vagrant # Vagrant if single user vm or hdfs otherwise 22 | RSPEC_VAGRANT_MYSQL_USER=vagrant # Vagrant if single user vm or mysql otherwise 23 | -------------------------------------------------------------------------------- /hopsworks-ear/test/.rspec: -------------------------------------------------------------------------------- 1 | --color 2 | --format documentation 3 | --require spec_helper 4 | -------------------------------------------------------------------------------- /hopsworks-ear/test/.ruby-gemset: -------------------------------------------------------------------------------- 1 | hopsworks 2 | -------------------------------------------------------------------------------- /hopsworks-ear/test/.ruby-version: -------------------------------------------------------------------------------- 1 | ruby-2.3.1 2 | -------------------------------------------------------------------------------- /hopsworks-ear/test/Gemfile: -------------------------------------------------------------------------------- 1 | # frozen_string_literal: true 2 | # A sample Gemfile 3 | source "https://rubygems.org" 4 | 5 | gem "rspec", "3.4.0" 6 | gem 'airborne', '0.2.5' 7 | gem 'activerecord', '4.2.6' 8 | gem 'mysql2', '0.4.4' 9 | gem 'net-ssh', '~> 2.1.0' 10 | gem 'session', '3.2.0' 11 | gem 'coderay', '1.1.1' 12 | gem 'rspec_junit_formatter' 13 | gem 'file-tail' 14 | 15 | group :development do 16 | gem 'dotenv' 17 | gem 'byebug' 18 | gem 'net-ssh-shell' 19 | end 20 | 21 | # gem "factory_girl", "~> 4" 22 | # gem 'activerecord', '4.2.6', platform: :ruby 23 | # gem 'activerecord-jdbc-adapter', '~> 1.3', platform: :jruby 24 | # gem 'mysql2', '0.4.4', platform: :ruby 25 | # gem 'jdbc-mysql', '~> 5.1', platform: :jruby 26 | -------------------------------------------------------------------------------- /hopsworks-ear/test/spec/factories/bbc_group.rb: -------------------------------------------------------------------------------- 1 | =begin 2 | Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | 4 | Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | software and associated documentation files (the "Software"), to deal in the Software 6 | without restriction, including without limitation the rights to use, copy, modify, merge, 7 | publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | persons to whom the Software is furnished to do so, subject to the following conditions: 9 | 10 | The above copyright notice and this permission notice shall be included in all copies or 11 | substantial portions of the Software. 12 | 13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | =end 19 | class BbcGroup < ActiveRecord::Base 20 | def self.table_name 21 | "bbc_group" 22 | end 23 | end 24 | -------------------------------------------------------------------------------- /hopsworks-ear/test/spec/factories/cluster_cert.rb: -------------------------------------------------------------------------------- 1 | =begin 2 | Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | 4 | Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | software and associated documentation files (the "Software"), to deal in the Software 6 | without restriction, including without limitation the rights to use, copy, modify, merge, 7 | publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | persons to whom the Software is furnished to do so, subject to the following conditions: 9 | 10 | The above copyright notice and this permission notice shall be included in all copies or 11 | substantial portions of the Software. 12 | 13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | =end 19 | class ClusterCert < ActiveRecord::Base 20 | def self.table_name 21 | "cluster_cert" 22 | end 23 | end -------------------------------------------------------------------------------- /hopsworks-ear/test/spec/factories/conda_commands.rb: -------------------------------------------------------------------------------- 1 | =begin 2 | Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | 4 | Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | software and associated documentation files (the "Software"), to deal in the Software 6 | without restriction, including without limitation the rights to use, copy, modify, merge, 7 | publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | persons to whom the Software is furnished to do so, subject to the following conditions: 9 | 10 | The above copyright notice and this permission notice shall be included in all copies or 11 | substantial portions of the Software. 12 | 13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | =end 19 | 20 | class CondaCommands < ActiveRecord::Base 21 | def self.table_name 22 | "conda_commands" 23 | end 24 | end 25 | -------------------------------------------------------------------------------- /hopsworks-ear/test/spec/factories/dataset.rb: -------------------------------------------------------------------------------- 1 | =begin 2 | Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | 4 | Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | software and associated documentation files (the "Software"), to deal in the Software 6 | without restriction, including without limitation the rights to use, copy, modify, merge, 7 | publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | persons to whom the Software is furnished to do so, subject to the following conditions: 9 | 10 | The above copyright notice and this permission notice shall be included in all copies or 11 | substantial portions of the Software. 12 | 13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | =end 19 | class Dataset < ActiveRecord::Base 20 | def self.table_name 21 | "dataset" 22 | end 23 | end 24 | -------------------------------------------------------------------------------- /hopsworks-ear/test/spec/factories/project.rb: -------------------------------------------------------------------------------- 1 | =begin 2 | Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | 4 | Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | software and associated documentation files (the "Software"), to deal in the Software 6 | without restriction, including without limitation the rights to use, copy, modify, merge, 7 | publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | persons to whom the Software is furnished to do so, subject to the following conditions: 9 | 10 | The above copyright notice and this permission notice shall be included in all copies or 11 | substantial portions of the Software. 12 | 13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | =end 19 | class Project < ActiveRecord::Base 20 | def self.table_name 21 | "project" 22 | end 23 | end 24 | -------------------------------------------------------------------------------- /hopsworks-ear/test/spec/factories/user.rb: -------------------------------------------------------------------------------- 1 | =begin 2 | Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | 4 | Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | software and associated documentation files (the "Software"), to deal in the Software 6 | without restriction, including without limitation the rights to use, copy, modify, merge, 7 | publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | persons to whom the Software is furnished to do so, subject to the following conditions: 9 | 10 | The above copyright notice and this permission notice shall be included in all copies or 11 | substantial portions of the Software. 12 | 13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | =end 19 | class User < ActiveRecord::Base 20 | end 21 | -------------------------------------------------------------------------------- /hopsworks-ear/test/spec/factories/user_group.rb: -------------------------------------------------------------------------------- 1 | =begin 2 | Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | 4 | Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | software and associated documentation files (the "Software"), to deal in the Software 6 | without restriction, including without limitation the rights to use, copy, modify, merge, 7 | publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | persons to whom the Software is furnished to do so, subject to the following conditions: 9 | 10 | The above copyright notice and this permission notice shall be included in all copies or 11 | substantial portions of the Software. 12 | 13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | =end 19 | class UserGroup < ActiveRecord::Base 20 | def self.table_name 21 | "user_group" 22 | end 23 | end 24 | -------------------------------------------------------------------------------- /hopsworks-ear/test/spec/factories/variables.rb: -------------------------------------------------------------------------------- 1 | =begin 2 | Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | 4 | Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | software and associated documentation files (the "Software"), to deal in the Software 6 | without restriction, including without limitation the rights to use, copy, modify, merge, 7 | publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | persons to whom the Software is furnished to do so, subject to the following conditions: 9 | 10 | The above copyright notice and this permission notice shall be included in all copies or 11 | substantial portions of the Software. 12 | 13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | =end 19 | class Variables < ActiveRecord::Base 20 | def self.table_name 21 | "variables" 22 | end 23 | end 24 | -------------------------------------------------------------------------------- /hopsworks-ear/test/spec/helpers/conda_helper.rb: -------------------------------------------------------------------------------- 1 | =begin 2 | Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | 4 | Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | software and associated documentation files (the "Software"), to deal in the Software 6 | without restriction, including without limitation the rights to use, copy, modify, merge, 7 | publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | persons to whom the Software is furnished to do so, subject to the following conditions: 9 | 10 | The above copyright notice and this permission notice shall be included in all copies or 11 | substantial portions of the Software. 12 | 13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | =end 19 | module CondaHelper 20 | 21 | def wait_for 22 | timeout = 600 23 | start = Time.now 24 | x = yield 25 | until x 26 | if Time.now - start > timeout 27 | raise "Timed out waiting for Anaconda to finish. Timeout #{timeout} sec" 28 | end 29 | sleep(1) 30 | x = yield 31 | end 32 | end 33 | end -------------------------------------------------------------------------------- /hopsworks-ear/test/spec/helpers/factory_helper.rb: -------------------------------------------------------------------------------- 1 | =begin 2 | Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | 4 | Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | software and associated documentation files (the "Software"), to deal in the Software 6 | without restriction, including without limitation the rights to use, copy, modify, merge, 7 | publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | persons to whom the Software is furnished to do so, subject to the following conditions: 9 | 10 | The above copyright notice and this permission notice shall be included in all copies or 11 | substantial portions of the Software. 12 | 13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | =end 19 | module FactoryHelper 20 | def random_id 21 | SecureRandom.hex(20) 22 | end 23 | 24 | def short_random_id 25 | SecureRandom.hex(4) 26 | end 27 | 28 | def pr(res) 29 | res.on_output do |val1, val2| 30 | # a is the process itself, b is the output 31 | p val2 32 | end 33 | # puts "Exit Status:#{res.exit_status}" 34 | # puts "Command Executed:#{res.command}" 35 | end 36 | end 37 | -------------------------------------------------------------------------------- /hopsworks-kmon/faces-config.NavData: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /hopsworks-kmon/src/main/java/io/hops/hopsworks/kmon/struct/ChartModel.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | * 4 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | * software and associated documentation files (the "Software"), to deal in the Software 6 | * without restriction, including without limitation the rights to use, copy, modify, merge, 7 | * publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | * persons to whom the Software is furnished to do so, subject to the following conditions: 9 | * 10 | * The above copyright notice and this permission notice shall be included in all copies or 11 | * substantial portions of the Software. 12 | * 13 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | * 19 | */ 20 | 21 | package io.hops.hopsworks.kmon.struct; 22 | 23 | public enum ChartModel { 24 | 25 | LINE, 26 | LINES, 27 | SUM_LINE, 28 | AVG_LINE, 29 | AREA, 30 | AREA_STACK 31 | } 32 | -------------------------------------------------------------------------------- /hopsworks-kmon/src/main/java/io/hops/hopsworks/kmon/struct/CollectdBasicType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | * 4 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | * software and associated documentation files (the "Software"), to deal in the Software 6 | * without restriction, including without limitation the rights to use, copy, modify, merge, 7 | * publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | * persons to whom the Software is furnished to do so, subject to the following conditions: 9 | * 10 | * The above copyright notice and this permission notice shall be included in all copies or 11 | * substantial portions of the Software. 12 | * 13 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | * 19 | */ 20 | 21 | package io.hops.hopsworks.kmon.struct; 22 | 23 | public enum CollectdBasicType { 24 | 25 | guage, 26 | counter, 27 | derive, 28 | absolute, 29 | memory 30 | } 31 | -------------------------------------------------------------------------------- /hopsworks-kmon/src/main/java/io/hops/hopsworks/kmon/struct/CollectdPluginInstanceType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | * 4 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | * software and associated documentation files (the "Software"), to deal in the Software 6 | * without restriction, including without limitation the rights to use, copy, modify, merge, 7 | * publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | * persons to whom the Software is furnished to do so, subject to the following conditions: 9 | * 10 | * The above copyright notice and this permission notice shall be included in all copies or 11 | * substantial portions of the Software. 12 | * 13 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | * 19 | */ 20 | 21 | package io.hops.hopsworks.kmon.struct; 22 | 23 | public enum CollectdPluginInstanceType { 24 | 25 | ndbinfo, 26 | FSNamesystem, 27 | FSNamesystemState, 28 | NameNodeActivity, 29 | DataNodeActivity, 30 | NodeManager, 31 | ResourceManager 32 | } 33 | -------------------------------------------------------------------------------- /hopsworks-kmon/src/main/java/io/hops/hopsworks/kmon/struct/CollectdPluginType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | * 4 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | * software and associated documentation files (the "Software"), to deal in the Software 6 | * without restriction, including without limitation the rights to use, copy, modify, merge, 7 | * publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | * persons to whom the Software is furnished to do so, subject to the following conditions: 9 | * 10 | * The above copyright notice and this permission notice shall be included in all copies or 11 | * substantial portions of the Software. 12 | * 13 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | * 19 | */ 20 | 21 | package io.hops.hopsworks.kmon.struct; 22 | 23 | public enum CollectdPluginType { 24 | 25 | dbi, 26 | GenericJMX 27 | } 28 | -------------------------------------------------------------------------------- /hopsworks-kmon/src/main/java/io/hops/hopsworks/kmon/struct/ColorType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | * 4 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | * software and associated documentation files (the "Software"), to deal in the Software 6 | * without restriction, including without limitation the rights to use, copy, modify, merge, 7 | * publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | * persons to whom the Software is furnished to do so, subject to the following conditions: 9 | * 10 | * The above copyright notice and this permission notice shall be included in all copies or 11 | * substantial portions of the Software. 12 | * 13 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | * 19 | */ 20 | 21 | package io.hops.hopsworks.kmon.struct; 22 | 23 | public enum ColorType { 24 | 25 | GREEN, 26 | RED, 27 | BLUE, 28 | YELLOW 29 | } 30 | -------------------------------------------------------------------------------- /hopsworks-kmon/src/main/java/io/hops/hopsworks/kmon/struct/DatePeriod.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | * 4 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | * software and associated documentation files (the "Software"), to deal in the Software 6 | * without restriction, including without limitation the rights to use, copy, modify, merge, 7 | * publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | * persons to whom the Software is furnished to do so, subject to the following conditions: 9 | * 10 | * The above copyright notice and this permission notice shall be included in all copies or 11 | * substantial portions of the Software. 12 | * 13 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | * 19 | */ 20 | 21 | package io.hops.hopsworks.kmon.struct; 22 | 23 | public class DatePeriod { 24 | 25 | private String label; 26 | private String value; 27 | 28 | public DatePeriod(String label, String value) { 29 | this.label = label; 30 | this.value = value; 31 | } 32 | 33 | public String getLabel() { 34 | return label; 35 | } 36 | 37 | public String getValue() { 38 | return value; 39 | } 40 | } 41 | -------------------------------------------------------------------------------- /hopsworks-kmon/src/main/java/io/hops/hopsworks/kmon/struct/GroupType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | * 4 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | * software and associated documentation files (the "Software"), to deal in the Software 6 | * without restriction, including without limitation the rights to use, copy, modify, merge, 7 | * publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | * persons to whom the Software is furnished to do so, subject to the following conditions: 9 | * 10 | * The above copyright notice and this permission notice shall be included in all copies or 11 | * substantial portions of the Software. 12 | * 13 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | * 19 | */ 20 | 21 | package io.hops.hopsworks.kmon.struct; 22 | 23 | public enum GroupType { 24 | 25 | HDFS, 26 | YARN, 27 | HISTORY_SERVERS, 28 | kafka, 29 | NDB, 30 | Monitoring, 31 | ELK, 32 | Hops, 33 | livy, 34 | Hive, 35 | SSH 36 | } 37 | -------------------------------------------------------------------------------- /hopsworks-kmon/src/main/java/io/hops/hopsworks/kmon/utils/FilterUtils.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | * 4 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | * software and associated documentation files (the "Software"), to deal in the Software 6 | * without restriction, including without limitation the rights to use, copy, modify, merge, 7 | * publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | * persons to whom the Software is furnished to do so, subject to the following conditions: 9 | * 10 | * The above copyright notice and this permission notice shall be included in all copies or 11 | * substantial portions of the Software. 12 | * 13 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | * 19 | */ 20 | 21 | package io.hops.hopsworks.kmon.utils; 22 | 23 | import javax.faces.model.SelectItem; 24 | 25 | public class FilterUtils { 26 | 27 | public static SelectItem[] createFilterOptions(Object[] data) { 28 | SelectItem[] options = new SelectItem[data.length + 1]; 29 | options[0] = new SelectItem("", "Any"); 30 | for (int i = 0; i < data.length; i++) { 31 | options[i + 1] = new SelectItem(data[i].toString(), data[i].toString()); 32 | } 33 | return options; 34 | } 35 | 36 | } 37 | -------------------------------------------------------------------------------- /hopsworks-kmon/src/main/java/io/hops/hopsworks/kmon/utils/UrlUtils.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | * 4 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | * software and associated documentation files (the "Software"), to deal in the Software 6 | * without restriction, including without limitation the rights to use, copy, modify, merge, 7 | * publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | * persons to whom the Software is furnished to do so, subject to the following conditions: 9 | * 10 | * The above copyright notice and this permission notice shall be included in all copies or 11 | * substantial portions of the Software. 12 | * 13 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | * 19 | */ 20 | 21 | package io.hops.hopsworks.kmon.utils; 22 | 23 | import java.util.HashMap; 24 | import java.util.Map; 25 | 26 | public class UrlUtils { 27 | 28 | public static String addParams(String url, HashMap params) { 29 | for (Map.Entry entry : params.entrySet()) { 30 | url += entry.getKey() + "=" + entry.getValue() + "&"; 31 | } 32 | return url; 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /hopsworks-kmon/src/main/webapp/resources/images/ajax-loader.GIF: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dc-sics/hopsworks/750106ec1fb966a78181dc5d65bb58310edc865a/hopsworks-kmon/src/main/webapp/resources/images/ajax-loader.GIF -------------------------------------------------------------------------------- /hopsworks-kmon/src/main/webapp/resources/images/ajaxloadingbar.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dc-sics/hopsworks/750106ec1fb966a78181dc5d65bb58310edc865a/hopsworks-kmon/src/main/webapp/resources/images/ajaxloadingbar.gif -------------------------------------------------------------------------------- /hopsworks-kmon/src/main/webapp/resources/images/hops-black.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dc-sics/hopsworks/750106ec1fb966a78181dc5d65bb58310edc865a/hopsworks-kmon/src/main/webapp/resources/images/hops-black.png -------------------------------------------------------------------------------- /hopsworks-kmon/src/main/webapp/resources/images/views/hadoop.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dc-sics/hopsworks/750106ec1fb966a78181dc5d65bb58310edc865a/hopsworks-kmon/src/main/webapp/resources/images/views/hadoop.png -------------------------------------------------------------------------------- /hopsworks-kmon/src/main/webapp/resources/primefaces-bootstrap/images/ui-icons_333333_256x240.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dc-sics/hopsworks/750106ec1fb966a78181dc5d65bb58310edc865a/hopsworks-kmon/src/main/webapp/resources/primefaces-bootstrap/images/ui-icons_333333_256x240.png -------------------------------------------------------------------------------- /hopsworks-kmon/src/main/webapp/resources/primefaces-bootstrap/images/ui-icons_ffffff_256x240.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dc-sics/hopsworks/750106ec1fb966a78181dc5d65bb58310edc865a/hopsworks-kmon/src/main/webapp/resources/primefaces-bootstrap/images/ui-icons_ffffff_256x240.png -------------------------------------------------------------------------------- /hopsworks-web/yo/.bowerrc: -------------------------------------------------------------------------------- 1 | { 2 | "registry": "https://registry.bower.io" 3 | } 4 | -------------------------------------------------------------------------------- /hopsworks-web/yo/app/.buildignore: -------------------------------------------------------------------------------- 1 | *.coffee -------------------------------------------------------------------------------- /hopsworks-web/yo/app/footer.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 26 | 27 | 28 | -------------------------------------------------------------------------------- /hopsworks-web/yo/app/header.html: -------------------------------------------------------------------------------- 1 | 20 | 21 |

22 |
23 |
24 | 25 | 26 |
27 |
28 | 29 |
30 |
31 | 32 |
33 |
34 | 35 |
-------------------------------------------------------------------------------- /hopsworks-web/yo/app/images/back.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /hopsworks-web/yo/app/images/checkbox_false.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /hopsworks-web/yo/app/images/checkbox_false_old.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /hopsworks-web/yo/app/images/checkbox_intermediate.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /hopsworks-web/yo/app/images/checkbox_true.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /hopsworks-web/yo/app/images/checkbox_true_old.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /hopsworks-web/yo/app/images/cloud_upload.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /hopsworks-web/yo/app/images/dela-green.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dc-sics/hopsworks/750106ec1fb966a78181dc5d65bb58310edc865a/hopsworks-web/yo/app/images/dela-green.png -------------------------------------------------------------------------------- /hopsworks-web/yo/app/images/delete.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /hopsworks-web/yo/app/images/delete_forever.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /hopsworks-web/yo/app/images/download.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /hopsworks-web/yo/app/images/experiment.xcf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dc-sics/hopsworks/750106ec1fb966a78181dc5d65bb58310edc865a/hopsworks-web/yo/app/images/experiment.xcf -------------------------------------------------------------------------------- /hopsworks-web/yo/app/images/file_upload.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /hopsworks-web/yo/app/images/folder.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /hopsworks-web/yo/app/images/folder_black.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /hopsworks-web/yo/app/images/folder_new.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /hopsworks-web/yo/app/images/folder_open.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /hopsworks-web/yo/app/images/folder_shared.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /hopsworks-web/yo/app/images/googleAuth.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dc-sics/hopsworks/750106ec1fb966a78181dc5d65bb58310edc865a/hopsworks-web/yo/app/images/googleAuth.png -------------------------------------------------------------------------------- /hopsworks-web/yo/app/images/hops-black.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dc-sics/hopsworks/750106ec1fb966a78181dc5d65bb58310edc865a/hopsworks-web/yo/app/images/hops-black.png -------------------------------------------------------------------------------- /hopsworks-web/yo/app/images/hops.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dc-sics/hopsworks/750106ec1fb966a78181dc5d65bb58310edc865a/hopsworks-web/yo/app/images/hops.png -------------------------------------------------------------------------------- /hopsworks-web/yo/app/images/jupyter-200x200-bw.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dc-sics/hopsworks/750106ec1fb966a78181dc5d65bb58310edc865a/hopsworks-web/yo/app/images/jupyter-200x200-bw.png -------------------------------------------------------------------------------- /hopsworks-web/yo/app/images/jupyter-200x200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dc-sics/hopsworks/750106ec1fb966a78181dc5d65bb58310edc865a/hopsworks-web/yo/app/images/jupyter-200x200.png -------------------------------------------------------------------------------- /hopsworks-web/yo/app/images/jupyter.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dc-sics/hopsworks/750106ec1fb966a78181dc5d65bb58310edc865a/hopsworks-web/yo/app/images/jupyter.png -------------------------------------------------------------------------------- /hopsworks-web/yo/app/images/kafka_logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dc-sics/hopsworks/750106ec1fb966a78181dc5d65bb58310edc865a/hopsworks-web/yo/app/images/kafka_logo.png -------------------------------------------------------------------------------- /hopsworks-web/yo/app/images/list.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /hopsworks-web/yo/app/images/login-2fa.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dc-sics/hopsworks/750106ec1fb966a78181dc5d65bb58310edc865a/hopsworks-web/yo/app/images/login-2fa.png -------------------------------------------------------------------------------- /hopsworks-web/yo/app/images/preview.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /hopsworks-web/yo/app/images/python_logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dc-sics/hopsworks/750106ec1fb966a78181dc5d65bb58310edc865a/hopsworks-web/yo/app/images/python_logo.png -------------------------------------------------------------------------------- /hopsworks-web/yo/app/images/qrExample.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dc-sics/hopsworks/750106ec1fb966a78181dc5d65bb58310edc865a/hopsworks-web/yo/app/images/qrExample.png -------------------------------------------------------------------------------- /hopsworks-web/yo/app/images/qrExample1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dc-sics/hopsworks/750106ec1fb966a78181dc5d65bb58310edc865a/hopsworks-web/yo/app/images/qrExample1.png -------------------------------------------------------------------------------- /hopsworks-web/yo/app/images/rstudio-color.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dc-sics/hopsworks/750106ec1fb966a78181dc5d65bb58310edc865a/hopsworks-web/yo/app/images/rstudio-color.png -------------------------------------------------------------------------------- /hopsworks-web/yo/app/images/rstudio.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dc-sics/hopsworks/750106ec1fb966a78181dc5d65bb58310edc865a/hopsworks-web/yo/app/images/rstudio.png -------------------------------------------------------------------------------- /hopsworks-web/yo/app/images/select2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dc-sics/hopsworks/750106ec1fb966a78181dc5d65bb58310edc865a/hopsworks-web/yo/app/images/select2.png -------------------------------------------------------------------------------- /hopsworks-web/yo/app/images/spark_logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dc-sics/hopsworks/750106ec1fb966a78181dc5d65bb58310edc865a/hopsworks-web/yo/app/images/spark_logo.png -------------------------------------------------------------------------------- /hopsworks-web/yo/app/images/spark_logo_white.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dc-sics/hopsworks/750106ec1fb966a78181dc5d65bb58310edc865a/hopsworks-web/yo/app/images/spark_logo_white.png -------------------------------------------------------------------------------- /hopsworks-web/yo/app/images/tf-175x200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dc-sics/hopsworks/750106ec1fb966a78181dc5d65bb58310edc865a/hopsworks-web/yo/app/images/tf-175x200.png -------------------------------------------------------------------------------- /hopsworks-web/yo/app/images/tf-175x200_bw.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dc-sics/hopsworks/750106ec1fb966a78181dc5d65bb58310edc865a/hopsworks-web/yo/app/images/tf-175x200_bw.png -------------------------------------------------------------------------------- /hopsworks-web/yo/app/images/zepLogo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dc-sics/hopsworks/750106ec1fb966a78181dc5d65bb58310edc865a/hopsworks-web/yo/app/images/zepLogo.png -------------------------------------------------------------------------------- /hopsworks-web/yo/app/images/zeppelin_logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dc-sics/hopsworks/750106ec1fb966a78181dc5d65bb58310edc865a/hopsworks-web/yo/app/images/zeppelin_logo.png -------------------------------------------------------------------------------- /hopsworks-web/yo/app/robots.txt: -------------------------------------------------------------------------------- 1 | # robotstxt.org 2 | 3 | User-agent: * 4 | -------------------------------------------------------------------------------- /hopsworks-web/yo/app/scripts/controllers/alertCtrl.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | * 4 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | * software and associated documentation files (the "Software"), to deal in the Software 6 | * without restriction, including without limitation the rights to use, copy, modify, merge, 7 | * publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | * persons to whom the Software is furnished to do so, subject to the following conditions: 9 | * 10 | * The above copyright notice and this permission notice shall be included in all copies or 11 | * substantial portions of the Software. 12 | * 13 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | * 19 | */ 20 | 21 | 'use strict'; 22 | 23 | angular.module('hopsWorksApp') 24 | .controller('AlertCtrl', ['$uibModalInstance', '$scope', 'title', 'msg', 25 | function ($uibModalInstance, $scope, title, msg) { 26 | 27 | var self = this; 28 | self.title = title; 29 | self.msg = msg; 30 | 31 | self.ok = function () { 32 | $uibModalInstance.close(); 33 | }; 34 | }]); 35 | 36 | -------------------------------------------------------------------------------- /hopsworks-web/yo/app/scripts/directives/hwPanel.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | * 4 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | * software and associated documentation files (the "Software"), to deal in the Software 6 | * without restriction, including without limitation the rights to use, copy, modify, merge, 7 | * publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | * persons to whom the Software is furnished to do so, subject to the following conditions: 9 | * 10 | * The above copyright notice and this permission notice shall be included in all copies or 11 | * substantial portions of the Software. 12 | * 13 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | * 19 | */ 20 | 21 | 'use strict'; 22 | 23 | angular.module('hopsWorksApp').directive('hwPanel', function() { 24 | return { 25 | restrict: 'E', 26 | scope: { 27 | content: '=', 28 | cardIndex: '=', 29 | pageNo: '=', 30 | detailsFn: '&', 31 | addFn: '&', 32 | downloadFn: '&' 33 | }, 34 | templateUrl:'views/publicDSPanel.html', 35 | controller: 'PublicDSPanelCtrl as publicDSPanelCtrl' 36 | }; 37 | }); 38 | 39 | -------------------------------------------------------------------------------- /hopsworks-web/yo/app/scripts/directives/hwcard.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | * 4 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | * software and associated documentation files (the "Software"), to deal in the Software 6 | * without restriction, including without limitation the rights to use, copy, modify, merge, 7 | * publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | * persons to whom the Software is furnished to do so, subject to the following conditions: 9 | * 10 | * The above copyright notice and this permission notice shall be included in all copies or 11 | * substantial portions of the Software. 12 | * 13 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | * 19 | */ 20 | 21 | 'use strict'; 22 | 23 | angular.module('hopsWorksApp').directive('hwCard', function() { 24 | return { 25 | restrict: 'E', 26 | scope: { 27 | content: '=', 28 | limit: '=', 29 | cardIndex: '=', 30 | pageNo: '=', 31 | delaEnabled: '=', 32 | detailsFn: '&', 33 | downloadFn: '&' 34 | }, 35 | templateUrl:'views/card.html', 36 | controller: 'CardCtrl as cardCtrl' 37 | }; 38 | }); 39 | 40 | 41 | -------------------------------------------------------------------------------- /hopsworks-web/yo/app/scripts/services/ActivityService.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | * 4 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | * software and associated documentation files (the "Software"), to deal in the Software 6 | * without restriction, including without limitation the rights to use, copy, modify, merge, 7 | * publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | * persons to whom the Software is furnished to do so, subject to the following conditions: 9 | * 10 | * The above copyright notice and this permission notice shall be included in all copies or 11 | * substantial portions of the Software. 12 | * 13 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | * 19 | */ 20 | 21 | 'use strict'; 22 | 23 | angular.module('hopsWorksApp') 24 | .factory('ActivityService', ['$http', function ($http) { 25 | var service = { 26 | getByUser: function () { 27 | return $http.get('/api/activity'); 28 | }, 29 | getByProjectId: function (id) { 30 | return $http.get('/api/activity/' + id); 31 | } 32 | }; 33 | return service; 34 | }]); -------------------------------------------------------------------------------- /hopsworks-web/yo/app/scripts/services/DelaClusterService.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | * 4 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | * software and associated documentation files (the "Software"), to deal in the Software 6 | * without restriction, including without limitation the rights to use, copy, modify, merge, 7 | * publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | * persons to whom the Software is furnished to do so, subject to the following conditions: 9 | * 10 | * The above copyright notice and this permission notice shall be included in all copies or 11 | * substantial portions of the Software. 12 | * 13 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | * 19 | */ 20 | 21 | 'use strict'; 22 | angular.module('hopsWorksApp') 23 | .factory('DelaClusterService', ['$http', function ($http) { 24 | var service = { 25 | getLocalPublicDatasets: function() { 26 | return $http({ 27 | method: 'GET', 28 | url: '/api/delacluster', 29 | isArray: true}); 30 | } 31 | }; 32 | return service; 33 | }]); 34 | -------------------------------------------------------------------------------- /hopsworks-web/yo/app/scripts/services/EndpointService.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | * 4 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | * software and associated documentation files (the "Software"), to deal in the Software 6 | * without restriction, including without limitation the rights to use, copy, modify, merge, 7 | * publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | * persons to whom the Software is furnished to do so, subject to the following conditions: 9 | * 10 | * The above copyright notice and this permission notice shall be included in all copies or 11 | * substantial portions of the Software. 12 | * 13 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | * 19 | */ 20 | 21 | /*global angular: false */ 22 | 23 | 'use strict'; 24 | 25 | angular.module('hopsWorksApp') 26 | .factory('EndpointService', ['$http', function ($http) { 27 | var service = { 28 | 29 | findEndpoint: function () { 30 | return $http.get('/api/endpoint'); 31 | } 32 | }; 33 | return service; 34 | }]); 35 | -------------------------------------------------------------------------------- /hopsworks-web/yo/app/scripts/services/FileUploadService.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | * 4 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | * software and associated documentation files (the "Software"), to deal in the Software 6 | * without restriction, including without limitation the rights to use, copy, modify, merge, 7 | * publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | * persons to whom the Software is furnished to do so, subject to the following conditions: 9 | * 10 | * The above copyright notice and this permission notice shall be included in all copies or 11 | * substantial portions of the Software. 12 | * 13 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | * 19 | */ 20 | 21 | 'use strict'; 22 | 23 | angular.module('hopsWorksApp') 24 | .factory('FileUpload', ['$http', function ($http) { 25 | return function (projectId, path) { 26 | return new Flow({target: getPathname() + '/api/project/' + projectId + '/dataset/upload/' + path}); 27 | }; 28 | }]); 29 | 30 | -------------------------------------------------------------------------------- /hopsworks-web/yo/app/scripts/services/MembersService.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | * 4 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | * software and associated documentation files (the "Software"), to deal in the Software 6 | * without restriction, including without limitation the rights to use, copy, modify, merge, 7 | * publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | * persons to whom the Software is furnished to do so, subject to the following conditions: 9 | * 10 | * The above copyright notice and this permission notice shall be included in all copies or 11 | * substantial portions of the Software. 12 | * 13 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | * 19 | */ 20 | 21 | 'use strict'; 22 | 23 | angular.module('hopsWorksApp') 24 | .factory('MembersService', ['$resource', function ($resource) { 25 | return $resource("/api/project/:id/projectMembers/:email", 26 | {id: "@id", email: "@email"}, 27 | { 28 | 'save': { 29 | method: 'POST', 30 | headers: {'Content-Type': 'application/json; charset=UTF-8'} 31 | }, 32 | 'update': {method: 'POST'} 33 | }); 34 | }]); 35 | -------------------------------------------------------------------------------- /hopsworks-web/yo/app/scripts/services/ProjectHistoryService.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | * 4 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | * software and associated documentation files (the "Software"), to deal in the Software 6 | * without restriction, including without limitation the rights to use, copy, modify, merge, 7 | * publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | * persons to whom the Software is furnished to do so, subject to the following conditions: 9 | * 10 | * The above copyright notice and this permission notice shall be included in all copies or 11 | * substantial portions of the Software. 12 | * 13 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | * 19 | */ 20 | 21 | 'use strict'; 22 | 23 | angular.module('hopsWorksApp') 24 | 25 | .factory('ProjectHistoryService', ['$http', function ($http) { 26 | var service = { 27 | getByUser: function () { 28 | return $http.get('/api/history'); 29 | }, 30 | getByProjectId: function (id) { 31 | return $http.get('/api/history/' + id); 32 | } 33 | }; 34 | return service; 35 | }]); 36 | -------------------------------------------------------------------------------- /hopsworks-web/yo/app/scripts/services/SecurityQuestionsService.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | * 4 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | * software and associated documentation files (the "Software"), to deal in the Software 6 | * without restriction, including without limitation the rights to use, copy, modify, merge, 7 | * publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | * persons to whom the Software is furnished to do so, subject to the following conditions: 9 | * 10 | * The above copyright notice and this permission notice shall be included in all copies or 11 | * substantial portions of the Software. 12 | * 13 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | * 19 | */ 20 | 21 | 'use strict'; 22 | 23 | angular.module('hopsWorksApp') 24 | .factory('SecurityQuestions', function () { 25 | var questions = ["Mother's maiden name?", 26 | 'Name of your first pet?', 27 | 'Name of your first love?']; 28 | return { 29 | getQuestions: function () { 30 | return questions; 31 | } 32 | }; 33 | 34 | }); 35 | -------------------------------------------------------------------------------- /hopsworks-web/yo/app/styles/ExampleProjectLoaderFix.css: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | * 4 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | * software and associated documentation files (the "Software"), to deal in the Software 6 | * without restriction, including without limitation the rights to use, copy, modify, merge, 7 | * publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | * persons to whom the Software is furnished to do so, subject to the following conditions: 9 | * 10 | * The above copyright notice and this permission notice shall be included in all copies or 11 | * substantial portions of the Software. 12 | * 13 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | * 19 | */ 20 | 21 | .ng-hide.ng-hide-animate{ 22 | display: none !important; 23 | } -------------------------------------------------------------------------------- /hopsworks-web/yo/app/styles/scrollbar.css: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2013 - 2018, Logical Clocks AB and RISE SICS AB. All rights reserved 3 | * 4 | * Permission is hereby granted, free of charge, to any person obtaining a copy of this 5 | * software and associated documentation files (the "Software"), to deal in the Software 6 | * without restriction, including without limitation the rights to use, copy, modify, merge, 7 | * publish, distribute, sublicense, and/or sell copies of the Software, and to permit 8 | * persons to whom the Software is furnished to do so, subject to the following conditions: 9 | * 10 | * The above copyright notice and this permission notice shall be included in all copies or 11 | * substantial portions of the Software. 12 | * 13 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING 14 | * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 15 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 16 | * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 17 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 18 | * 19 | */ 20 | 21 | div.thin-scrollbar::-webkit-scrollbar-track { 22 | -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.3); 23 | background-color: #F5F5F5; 24 | } 25 | 26 | div.thin-scrollbar::-webkit-scrollbar { 27 | width: 5px; 28 | background-color: #F5F5F5; 29 | } 30 | 31 | div.thin-scrollbar::-webkit-scrollbar-thumb { 32 | background-color: rgba(0,0,0,.26); 33 | } 34 | 35 | -------------------------------------------------------------------------------- /hopsworks-web/yo/app/views/alertModal.html: -------------------------------------------------------------------------------- 1 | 20 | 21 | 25 | 28 | 31 | -------------------------------------------------------------------------------- /hopsworks-web/yo/app/views/confirmModal.html: -------------------------------------------------------------------------------- 1 | 20 | 21 | 25 | 28 | 32 | -------------------------------------------------------------------------------- /hopsworks-web/yo/nbproject/customs.json: -------------------------------------------------------------------------------- 1 | { 2 | "elements": { 3 | "form": {}, 4 | "hw-panel": {} 5 | }, 6 | "attributes": { 7 | "growl": {} 8 | } 9 | } -------------------------------------------------------------------------------- /hopsworks-web/yo/nbproject/project.properties: -------------------------------------------------------------------------------- 1 | file.reference.yo-app=app 2 | files.encoding=UTF-8 3 | site.root.folder=${file.reference.yo-app} 4 | source.folder= 5 | -------------------------------------------------------------------------------- /hopsworks-web/yo/nbproject/project.xml: -------------------------------------------------------------------------------- 1 | 2 | 21 | 22 | 23 | org.netbeans.modules.web.clientproject 24 | 25 | 26 | hopsworks 27 | 28 | 29 | 30 | -------------------------------------------------------------------------------- /hopsworks-web/yo/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "hopsworks", 3 | "version": "0.0.1", 4 | "dependencies": {}, 5 | "repository": {}, 6 | "devDependencies": { 7 | "globule": "^1.0.0", 8 | "grunt": "^0.4.2", 9 | "grunt-autoprefixer": "^2.0.0", 10 | "grunt-concurrent": "^2.3.0", 11 | "grunt-contrib-clean": "^1.0.0", 12 | "grunt-contrib-concat": "^1.0.1", 13 | "grunt-contrib-connect": "^1.0.2", 14 | "grunt-contrib-copy": "^1.0.0", 15 | "grunt-contrib-cssmin": "^1.0.1", 16 | "grunt-contrib-htmlmin": "^1.4.0", 17 | "grunt-contrib-imagemin": "^1.0.0", 18 | "grunt-contrib-jshint": "^1.0.0", 19 | "grunt-contrib-uglify": "^1.0.1", 20 | "grunt-contrib-watch": "^1.0.0", 21 | "grunt-filerev": "^2.3.1", 22 | "grunt-google-cdn": "^0.4.3", 23 | "grunt-karma": "^1.0.0", 24 | "grunt-legacy-log": "^1.0.0", 25 | "grunt-newer": "^1.2.0", 26 | "grunt-ng-annotate": "^2.0.2", 27 | "grunt-svgmin": "^3.2.0", 28 | "grunt-usemin": "^3.1.1", 29 | "grunt-wiredep": "^3.0.1", 30 | "jasmine-core": "^2.4.1", 31 | "jshint-stylish": "^1.0.0", 32 | "karma": "^0.13.22", 33 | "karma-jasmine": "^1.0.2", 34 | "karma-phantomjs-launcher": "^1.0.0", 35 | "load-grunt-tasks": "^3.5.0", 36 | "time-grunt": "^1.3.0" 37 | }, 38 | "engines": { 39 | "node": ">=0.10.0" 40 | }, 41 | "scripts": { 42 | "test": "grunt test" 43 | } 44 | } 45 | -------------------------------------------------------------------------------- /hopsworks-web/yo/test/.jshintrc: -------------------------------------------------------------------------------- 1 | { 2 | "node": true, 3 | "browser": true, 4 | "esnext": true, 5 | "bitwise": true, 6 | "camelcase": true, 7 | "curly": true, 8 | "eqeqeq": true, 9 | "immed": true, 10 | "indent": 2, 11 | "latedef": true, 12 | "newcap": true, 13 | "noarg": true, 14 | "quotmark": "single", 15 | "regexp": true, 16 | "undef": true, 17 | "unused": true, 18 | "strict": true, 19 | "trailing": true, 20 | "smarttabs": true, 21 | "jasmine": true, 22 | "globals": { 23 | "angular": false, 24 | "browser": false, 25 | "inject": false 26 | } 27 | } 28 | 29 | -------------------------------------------------------------------------------- /scripts/README.md: -------------------------------------------------------------------------------- 1 | 2 | ## update-tables.sh 3 | 4 | This script is used to synchronize updates in ../sql/hopsworks.sql to the Chef cookbooks. 5 | Run this script if you update ../sql/hopsworks.sql 6 | You need to be a committer on the hopshadoop/hopsworks-chef project on github to be able to run this script. 7 | 8 | 9 | ## deploy-war.sh 10 | 11 | This script creates a new release for hopsworks.war on our http server. You need to have your public 12 | key registered with the server to be authorized to execute this script. 13 | 14 | ## dev-deploy-frontend.sh 15 | 16 | This script is a way to do frontend development without having to republish your war file on glassfish for every update. 17 | -------------------------------------------------------------------------------- /scripts/antonis-bbc2-frontend.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # Deploy the frontend to the glassfish home directory and run bower 3 | export PORT=50058 4 | export WEBPORT=8078 5 | export SERVER=bbc2.sics.se 6 | export key=private_key 7 | usr=antonis 8 | basedir=/srv/hops/domain1 9 | 10 | scp -i $HOME/.ssh/bbc_id_rsa ${usr}@${SERVER}:/home/${usr}/rpc_tls/hopsworks-chef/.vagrant/machines/default/virtualbox/private_key . 11 | ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o IdentitiesOnly=yes -i $key -p $PORT vagrant@${SERVER} "cd ${basedir} && sudo chown -R glassfish:vagrant docroot && sudo chmod -R 775 *" 12 | 13 | scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o IdentitiesOnly=yes -i $key -P ${PORT} -r ../hopsworks-web/yo/app/ vagrant@${SERVER}:${basedir}/docroot 14 | scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o IdentitiesOnly=yes -i $key -P ${PORT} ../hopsworks-web/yo/bower.json vagrant@${SERVER}:${basedir}/docroot/app 15 | 16 | ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o IdentitiesOnly=yes -i $key -p $PORT vagrant@${SERVER} "cd ${basedir}/docroot/app && bower install" 17 | 18 | #ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o IdentitiesOnly=yes -i $key -p $PORT vagrant@${SERVER} "cd ${basedir}/docroot/app && perl -pi -e \"s/getApiLocationBase\(\)/'http:\/\/${SERVER}:${WEBPORT}\/hopsworks-api/api\/'/g\" scripts/services/RequestInterceptorService.js" 19 | 20 | #google-chrome -new-tab http://${SERVER}:$WEBPORT/app 21 | -------------------------------------------------------------------------------- /scripts/asadmin: -------------------------------------------------------------------------------- 1 | To create email service follow these steps. Please note you sould changes the parameters such as email or tables names accordingly 2 | 3 | 1. cd [GLASSFISH_HOME_DIRECTORY]/bin 4 | 5 | 2. Replace the "mybbcemail@gmail.com" with your email address service 6 | 7 | 3. Run 8 | 9 | ./asadmin create-javamail-resource --mailhost smtp.gmail.com --mailuser hopsworks@gmail.com --fromaddress hopsworks@gmail.com --storeprotocol imap --storeprotocolclass com.sun.mail.imap.IMAPStore --transprotocol=smtp --transprotocolclass=com.sun.mail.smtp.SMTPTransport --debug=false --enabled=true --property "mail-smtp.starttls.enable=true:mail-smtp.socketFactory.fallback=false:mail-smtp.socketFactory.port=465:mail-smtp.socketFactory.class=javax.net.ssl.SSLSocketFactory:mail-smtp.password=XX:mail-smtp.port=465:mail-smtp.user=hopsworks@gmail.com:mail-smtp.auth=true" mail/BBCMail 10 | 11 | 12 | To creat custom auth realm Run 13 | 14 | ./asadmin create-auth-realm --classname se.kth.bbc.crealm.CustomAuthRealm --property "jaas-context=cauthRealm:encoding=Hex:password-column=password:datasource-jndi=jdbc/hopsworks:group-table=hopsworks.users_groups:user-table=hopsworks.users:charset=UTF-8:group-name-column=group_name:user-name-column=email:otp-secret-column=secret:user-status-column=status:group-table-user-name-column=email:variables-table=hopsworks.variables" cauthRealm -------------------------------------------------------------------------------- /scripts/cargo.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | set -e 4 | 5 | if [ $# -lt 1 ] ; then 6 | echo "Usage: hostname [admin_port port]" 7 | fi 8 | 9 | admin_port=16005 10 | port=14005 11 | if [ $# -eq 3 ] ; then 12 | admin_port=$2 13 | port=$3 14 | fi 15 | 16 | cd .. 17 | mvn -Dglassfish.port=$port -Dglassfish.admin_port=$admin_port -Dglassfish.hostname=$1 clean install -Pdeploy 18 | cd scripts 19 | ./jim-bbc1-scp.sh 20 | -------------------------------------------------------------------------------- /scripts/copy.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | set -e 4 | cp -fr ../hopsworks-web/yo/app/ /srv/hops/domains/domain1/docroot 5 | cp -fr ../hopsworks-web/yo/bower.json /srv/hops/domains/domain1/docroot/app 6 | pushd . 7 | cd /srv/hops/domains/domain1/docroot/app 8 | bower install 9 | #perl -pi -e \"s/getApiLocationBase\(\)/'http:\/\/localhost:8080\/hopsworks-api/api\/'/g\" scripts/services/RequestInterceptorService.js 10 | popd 11 | firefox --new-tab http://localhost:8080/app 12 | -------------------------------------------------------------------------------- /scripts/deploy.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | set -e 3 | 4 | ext="" 5 | if [ $# -eq 1 ] ; then 6 | ext="-$1" 7 | fi 8 | 9 | # Change to directory for the script 10 | cd "$(dirname "$0")" 11 | VERSION=`grep -o -a -m 1 -h -r "version>.*//" | sed "s/<\///g"` 12 | 13 | #VERSION=`echo $VERSION | sed -e 's/-SNAPSHOT//'` 14 | 15 | 16 | echo "Deploying ${VERSION}/hopsworks-ear${ext}.ear to http://snurran.sics.se/hops/hopsworks" 17 | echo "Deploying ${VERSION}/hopsworks-web${ext}.war to http://snurran.sics.se/hops/hopsworks" 18 | echo "Deploying ${VERSION}/hopsworks-ca${ext}.war to http://snurran.sics.se/hops/hopsworks" 19 | 20 | ssh glassfish@snurran.sics.se "cd /var/www/hops/hopsworks ; mkdir -p ${VERSION}" 21 | scp ../hopsworks-ear/target/hopsworks-ear.ear glassfish@snurran.sics.se:/var/www/hops/hopsworks/${VERSION}/hopsworks-ear${ext}.ear 22 | scp ../hopsworks-web/target/hopsworks-web.war glassfish@snurran.sics.se:/var/www/hops/hopsworks/${VERSION}/hopsworks-web${ext}.war 23 | scp ../hopsworks-ca/target/hopsworks-ca.war glassfish@snurran.sics.se:/var/www/hops/hopsworks/${VERSION}/hopsworks-ca${ext}.war 24 | 25 | echo "Successfully Copied to http://snurran.sics.se/hops/hopsworks/${VERSION}/" 26 | -------------------------------------------------------------------------------- /scripts/dev-deploy-frontend.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # Deploy the frontend to the glassfish home directory and run bower 3 | 4 | cd .. 5 | 6 | # Check if GLASSFISH_HOME is set 7 | if [ -z "$GLASSFISH_HOME" ]; then 8 | echo "GLASSFISH_HOME is not set. Set it to the directory in which your glassfish instance is installed." 9 | exit 1 10 | fi 11 | 12 | # Copy the app folder to the right location 13 | cp -r yo/app/ $GLASSFISH_HOME/glassfish/domains/domain1/docroot/ 14 | # Copy the bower.json 15 | cp yo/bower.json $GLASSFISH_HOME/glassfish/domains/domain1/docroot/ 16 | 17 | #change directory to the glassfish docroot 18 | cd $GLASSFISH_HOME/glassfish/domains/domain1/docroot 19 | #install bower components 20 | bower install 21 | #Edit the index.html 22 | cd app/ 23 | perl -pi -e "s/bower_components/..\/bower_components/g" index.html 24 | perl -pi -e "s/getLocationBase\(\)/'http:\/\/localhost:8080\/hopsworks'/g" scripts/services/RequestInterceptorService.js 25 | 26 | #Open a new firefox tab 27 | #firefox -new-tab http://localhost:8080/app 28 | google-chrome -new-tab http://localhost:8080/app 29 | -------------------------------------------------------------------------------- /scripts/gautier-bbc2.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # Deploy the frontend to the glassfish home directory and run bower 3 | export PORT=20007 4 | export WEBPORT=14007 5 | export SERVER=bbc2 6 | export key=private_key 7 | usr=gautier 8 | basedir=/srv/hops/domain1 9 | 10 | scp ${usr}@${SERVER}:/home/${usr}/hopsworks-chef/.vagrant/machines/default/virtualbox/private_key . 11 | ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o IdentitiesOnly=yes -i $key -p $PORT vagrant@${SERVER} "cd ${basedir} && sudo chown -R glassfish:vagrant docroot && sudo chmod -R 775 *" 12 | 13 | scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o IdentitiesOnly=yes -i $key -P ${PORT} -r ../hopsworks-web/yo/app/ vagrant@${SERVER}:${basedir}/docroot 14 | scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o IdentitiesOnly=yes -i $key -P ${PORT} ../hopsworks-web/yo/bower.json vagrant@${SERVER}:${basedir}/docroot/app 15 | 16 | ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o IdentitiesOnly=yes -i $key -p $PORT vagrant@${SERVER} "cd ${basedir}/docroot/app && bower install" 17 | 18 | #ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o IdentitiesOnly=yes -i $key -p $PORT vagrant@${SERVER} "cd ${basedir}/docroot/app && perl -pi -e \"s/getApiLocationBase\(\)/'http:\/\/${SERVER}:${WEBPORT}\/hopsworks-api/api\/'/g\" scripts/services/RequestInterceptorService.js" 19 | 20 | #google-chrome -new-tab http://${SERVER}:$WEBPORT/app 21 | -------------------------------------------------------------------------------- /scripts/gautier-frontend-scp.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # Deploy the frontend to the glassfish home directory and run bower 3 | export PORT=50970 4 | export WEBPORT=8980 5 | export SERVER=bbc1 6 | export key=private_key 7 | usr=gautier 8 | 9 | cp /home/gautier/hop/myhops/hopsworks-chef/.vagrant/machines/default/virtualbox/private_key . 10 | 11 | ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o IdentitiesOnly=yes -i $key -p $PORT vagrant@${SERVER} "cd /srv/glassfish/domain1 && sudo chown -R glassfish:vagrant docroot && sudo chmod -R 775 *" 12 | 13 | scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o IdentitiesOnly=yes -i $key -P ${PORT} -r ../yo/app/ vagrant@${SERVER}:/srv/glassfish/domain1/docroot 14 | scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o IdentitiesOnly=yes -i $key -P ${PORT} ../yo/bower.json vagrant@${SERVER}:/srv/glassfish/domain1/docroot/app 15 | 16 | ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o IdentitiesOnly=yes -i $key -p $PORT vagrant@${SERVER} "cd /srv/glassfish/domain1/docroot/app && bower install && perl -pi -e \"s/getLocationBase\(\)/'http:\/\/${SERVER}:${WEBPORT}\/hopsworks'/g\" scripts/services/RequestInterceptorService.js" 17 | 18 | #chromium-browser -new-tab http://${SERVER}:$WEBPORT/app 19 | -------------------------------------------------------------------------------- /scripts/jim-bbc1-scp.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # Deploy the frontend to the glassfish home directory and run bower 3 | export PORT=20005 4 | export WEBPORT=14005 5 | export SERVER=bbc1.sics.se 6 | export key=private_key 7 | usr=jdowling 8 | basedir=/srv/hops/domain1 9 | # /srv/hops/domain1/applications/hopsworks-web 10 | 11 | scp ${usr}@bbc1.sics.se:/home/${usr}/hopsworks-chef/.vagrant/machines/default/virtualbox/private_key . 12 | ./.vagrant/machines/default/virtualbox/private_key 13 | ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o IdentitiesOnly=yes -i $key -p $PORT vagrant@${SERVER} "cd ${basedir} && sudo chown -R glassfish:vagrant docroot && sudo chmod -R 775 *" 14 | 15 | scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o IdentitiesOnly=yes -i $key -P ${PORT} -r ../yo/app/ vagrant@${SERVER}:${basedir}/docroot 16 | scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o IdentitiesOnly=yes -i $key -P ${PORT} ../yo/bower.json vagrant@${SERVER}:${basedir}/docroot/app 17 | 18 | ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o IdentitiesOnly=yes -i $key -p $PORT vagrant@${SERVER} "cd ${basedir}/docroot/app && bower install && perl -pi -e \"s/getLocationBase\(\)/'http:\/\/${SERVER}:${WEBPORT}\/hopsworks'/g\" scripts/services/RequestInterceptorService.js" 19 | 20 | google-chrome -new-tab http://${SERVER}:$WEBPORT/app 21 | -------------------------------------------------------------------------------- /scripts/jim-frontend-vagrant.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # Deploy the frontend to the glassfish home directory and run bower 3 | export PORT=2222 4 | export WEBPORT=8081 5 | export SERVER=localhost 6 | export key=private_key 7 | 8 | 9 | cp /home/${USER}/NetBeansProjects/hopsworks-chef/.vagrant/machines/default/virtualbox/private_key . 10 | chmod 600 private_key 11 | 12 | ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o IdentitiesOnly=yes -i $key -p $PORT vagrant@${SERVER} "cd /srv/glassfish/domain1 && sudo chown -R glassfish:vagrant docroot && sudo chmod -R 775 *" 13 | 14 | scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o IdentitiesOnly=yes -i $key -P ${PORT} -r ../yo/app/ vagrant@${SERVER}:/srv/glassfish/domain1/docroot 15 | scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o IdentitiesOnly=yes -i $key -P ${PORT} ../yo/bower.json vagrant@${SERVER}:/srv/glassfish/domain1/docroot/app 16 | 17 | ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o IdentitiesOnly=yes -i $key -p $PORT vagrant@${SERVER} "cd /srv/glassfish/domain1/docroot/app && bower install && perl -pi -e \"s/getLocationBase\(\)/'http:\/\/${SERVER}:${WEBPORT}\/hopsworks'/g\" scripts/services/RequestInterceptorService.js" 18 | 19 | google-chrome -new-tab http://${SERVER}:$WEBPORT/app 20 | -------------------------------------------------------------------------------- /scripts/jim-snurran-scp.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # Deploy the frontend to the glassfish home directory and run bower 3 | export PORT=2222 4 | export WEBPORT=8080 5 | export SERVER=snurran.sics.se 6 | export key=private_key 7 | usr=jdowling 8 | basedir=/srv/hops/domain1 9 | 10 | scp ${usr}@${SERVER}:/home/${usr}/NetBeansProjects/hopsworks-chef/.vagrant/machines/default/virtualbox/private_key . 11 | ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o IdentitiesOnly=yes -i $key -p $PORT vagrant@${SERVER} "cd ${basedir} && sudo chown -R glassfish:vagrant docroot && sudo chmod -R 775 *" 12 | 13 | scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o IdentitiesOnly=yes -i $key -P ${PORT} -r ../hopsworks-web/yo/app/ vagrant@${SERVER}:${basedir}/docroot 14 | scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o IdentitiesOnly=yes -i $key -P ${PORT} ../hopsworks-web/yo/bower.json vagrant@${SERVER}:${basedir}/docroot/app 15 | 16 | ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o IdentitiesOnly=yes -i $key -p $PORT vagrant@${SERVER} "cd ${basedir}/docroot/app && bower install" 17 | 18 | ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o IdentitiesOnly=yes -i $key -p $PORT vagrant@${SERVER} "cd ${basedir}/docroot/app && perl -pi -e \"s/getApiLocationBase\(\)/'http:\/\/${SERVER}:${WEBPORT}\/hopsworks-api/api\/'/g\" scripts/services/RequestInterceptorService.js" 19 | 20 | google-chrome -new-tab http://${SERVER}:$WEBPORT/app 21 | -------------------------------------------------------------------------------- /scripts/kafka-frontend-scp.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # Deploy the frontend to the glassfish home directory and run bower 3 | export PORT=16012 4 | export WEBPORT=14012 5 | export SERVER=bbc1.sics.se 6 | export key=private_key 7 | usr=tkak 8 | 9 | scp root@bbc1.sics.se:/home/hopsworks/${usr}/hopsworks-chef/.vagrant/machines/default/virtualbox/private_key . 10 | 11 | ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o IdentitiesOnly=yes -i $key -p $PORT vagrant@${SERVER} "cd /srv/glassfish/domain1 && sudo chown -R glassfish:vagrant docroot && sudo chmod -R 775 *" 12 | 13 | scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o IdentitiesOnly=yes -i $key -P ${PORT} -r ../yo/app/ vagrant@${SERVER}:/srv/glassfish/domain1/docroot 14 | scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o IdentitiesOnly=yes -i $key -P ${PORT} ../yo/bower.json vagrant@${SERVER}:/srv/glassfish/domain1/docroot/app 15 | 16 | ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o IdentitiesOnly=yes -i $key -p $PORT vagrant@${SERVER} "cd /srv/glassfish/domain1/docroot/app && bower install && perl -pi -e \"s/getLocationBase\(\)/'http:\/\/${SERVER}:${WEBPORT}\/hopsworks'/g\" scripts/services/RequestInterceptorService.js" 17 | 18 | google-chrome -new-tab http://${SERVER}:$WEBPORT/app 19 | -------------------------------------------------------------------------------- /scripts/localhost.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # Deploy the frontend to the glassfish home directory and run bower 3 | 4 | if [ !-d ../../karamel-chef ] ; then 5 | echo "Error. You must first have 'karamel-chef' installed in the same base directory as this 'hopsworks' project" 6 | echo "" 7 | exit 1 8 | fi 9 | 10 | vagrant_port=`../../karamel-chef/run.sh ports | grep 22 | sed -e 's/22 -> //'` 11 | web_port=`../../karamel-chef/run.sh ports | grep 8080 | sed -e 's/8080 -> //'` 12 | export PORT=${vagrant_port} 13 | export WEBPORT=${web_port} 14 | export SERVER=localhost 15 | export key=private_key 16 | usr=${USER} 17 | basedir=/srv/hops/domains/domain1 18 | 19 | scp ${usr}@${SERVER}:/home/${usr}/.vagrant.d/insecure_private_key . 20 | 21 | ssh -o UserKnownHostFile=/dev/null -o StrictHostKeyChecking=no -o IdentitiesOnly=yes -i $key -p $PORT vagrant@${SERVER} "cd ${basedir} && sudo chown -R glassfish:vagrant docroot && sudo chmod -R 775 *" 22 | 23 | scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o IdentitiesOnly=yes -i $key -P ${PORT} -r ../hopsworks-web/yo/app/ vagrant@${SERVER}:${basedir}/docroot 24 | scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o IdentitiesOnly=yes -i $key -P ${PORT} ../hopsworks-web/yo/bower.json vagrant@${SERVER}:${basedir}/docroot/app 25 | 26 | ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o IdentitiesOnly=yes -i $key -p $PORT vagrant@${SERVER} "cd ${basedir}/docroot/app && bower install" 27 | 28 | #ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o IdentitiesOnly=yes -i $key -p $PORT vagrant@${SERVER} "cd ${basedir}/docroot/app && perl -pi -e \"s/getApiLocationBase\(\)/'http:\/\/${SERVER}:${WEBPORT}\/hopsworks-api/api\/'/g\" scripts/services/RequestInterceptorService.js" 29 | 30 | google-chrome -new-tab http://${SERVER}:$WEBPORT/app 31 | -------------------------------------------------------------------------------- /scripts/misganu-frontend-scp.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # Deploy the frontend to the glassfish home directory and run bower 3 | export PORT=19004 4 | export WEBPORT=14004 5 | export SERVER=bbc1.sics.se 6 | export key=private_key 7 | usr=misganu 8 | 9 | scp root@bbc1.sics.se:/home/hopsworks/${usr}/hopsworks-chef/.vagrant/machines/default/virtualbox/private_key . 10 | 11 | ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o IdentitiesOnly=yes -i $key -p $PORT vagrant@${SERVER} "cd /srv/glassfish/domain1 && sudo chown -R glassfish:vagrant docroot && sudo chmod -R 775 *" 12 | 13 | scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o IdentitiesOnly=yes -i $key -P ${PORT} -r ../yo/app/ vagrant@${SERVER}:/srv/glassfish/domain1/docroot 14 | scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o IdentitiesOnly=yes -i $key -P ${PORT} ../yo/bower.json vagrant@${SERVER}:/srv/glassfish/domain1/docroot/app 15 | 16 | ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o IdentitiesOnly=yes -i $key -p $PORT vagrant@${SERVER} "cd /srv/glassfish/domain1/docroot/app && bower install && perl -pi -e \"s/getLocationBase\(\)/'http:\/\/${SERVER}:${WEBPORT}\/hopsworks'/g\" scripts/services/RequestInterceptorService.js" 17 | 18 | google-chrome -new-tab http://${SERVER}:$WEBPORT/app 19 | -------------------------------------------------------------------------------- /scripts/scp-deploy-frontend.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # Deploy the frontend to the glassfish home directory and run bower 3 | export PORT=20006 4 | export WEBPORT=14006 5 | export SERVER=bbc1.sics.se 6 | export key=private_key 7 | usr=vasilis 8 | 9 | scp ${usr}@bbc1.sics.se:/home/hopsworks/${usr}/hopsworks-chef/.vagrant/machines/default/virtualbox/private_key . 10 | 11 | ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o IdentitiesOnly=yes -i $key -p $PORT vagrant@${SERVER} "cd /srv/glassfish/domain1 && sudo chown -R glassfish:vagrant docroot && sudo chmod -R 775 *" 12 | 13 | scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o IdentitiesOnly=yes -i $key -P ${PORT} -r ../yo/app/ vagrant@${SERVER}:/srv/glassfish/domain1/docroot 14 | scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o IdentitiesOnly=yes -i $key -P ${PORT} ../yo/bower.json vagrant@${SERVER}:/srv/glassfish/domain1/docroot/app 15 | 16 | ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o IdentitiesOnly=yes -i $key -p $PORT vagrant@${SERVER} "cd /srv/glassfish/domain1/docroot/app && bower install && perl -pi -e \"s/getLocationBase\(\)/'http:\/\/${SERVER}:${WEBPORT}\/hopsworks'/g\" scripts/services/RequestInterceptorService.js" 17 | 18 | google-chrome -new-tab http://${SERVER}:$WEBPORT/app 19 | -------------------------------------------------------------------------------- /scripts/tkak-frontend-scp.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # Deploy the frontend to the glassfish home directory and run bower 3 | export PORT=2222 4 | export WEBPORT=8080 5 | export SERVER=hopslocal 6 | export key=/media/sf_Shared2/private_key 7 | 8 | ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o IdentitiesOnly=yes -i $key -p $PORT vagrant@${SERVER} "cd /srv/hops/domain1 && sudo chown -R glassfish:vagrant docroot && sudo chmod -R 775 *" 9 | 10 | scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o IdentitiesOnly=yes -i $key -P ${PORT} -r ../yo/app/ vagrant@${SERVER}:/srv/hops/domain1/docroot 11 | scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o IdentitiesOnly=yes -i $key -P ${PORT} ../yo/bower.json vagrant@${SERVER}:/srv/hops/domain1/docroot/app 12 | 13 | ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o IdentitiesOnly=yes -i $key -p $PORT vagrant@${SERVER} "cd /srv/hops/domain1/docroot/app && bower install && perl -pi -e \"s/getLocationBase\(\)/'http:\/\/${SERVER}:${WEBPORT}\/hopsworks'/g\" scripts/services/RequestInterceptorService.js" 14 | 15 | #google-chrome -new-tab http://${SERVER}:$WEBPORT/app 16 | -------------------------------------------------------------------------------- /scripts/update-tables.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | set -e 4 | if [ ! -d ../../hopsworks-chef ] ; then 5 | 6 | echo "Run this script from the ./hopsworks/scripts directory." 7 | echo "You must checkout the project: 'hopshadoop/hopsworks-chef' into the same root directory as the 'hopsworks' project" 8 | echo "This script will then update the sql tables in the 'hopsworks-chef' project" 9 | exit 1 10 | fi 11 | 12 | 13 | pushd . 14 | cd ../../hopsworks-chef 15 | git checkout develop 16 | git pull 17 | popd 18 | 19 | diff ../sql/hopsworks.sql ../../hopsworks-chef/templates/default/tables.sql.erb 20 | 21 | if [ $? -eq 0 ] ; then 22 | echo "hopsworks.sql is update-to-date. No changes made." 23 | exit 0 24 | fi 25 | 26 | 27 | cp ../sql/hopsworks.sql ../../hopsworks-chef/templates/default/tables.sql.erb 28 | 29 | pushd . 30 | cd ../../hopsworks-chef 31 | git commit -am "Updating hopsworks.sql" 32 | git push 33 | popd 34 | 35 | echo "Updated sql tables" 36 | 37 | exit 0 38 | -------------------------------------------------------------------------------- /tools/maven/suppressions.xml: -------------------------------------------------------------------------------- 1 | 2 | 21 | 22 | 25 | 26 | 27 | 30 | 31 | -------------------------------------------------------------------------------- /tools/netbeans/netbeans-settings.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dc-sics/hopsworks/750106ec1fb966a78181dc5d65bb58310edc865a/tools/netbeans/netbeans-settings.zip --------------------------------------------------------------------------------