Skip to content
New issue

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

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

Already on GitHub? Sign in to your account

[WIP] Implementation of fileshare controller and dock #658

Closed
wants to merge 2 commits into from

Conversation

Shruthi-1MN
Copy link
Contributor

What this PR does / why we need it:
Implementation of new separate controller and dock for file share feature - only post/create file share has been done yet.
File share post code workflow is as below:
Controller workflow:

  1. gRPC interface(model/fileshareproto, filesharecontroller.go)
  2. Fileshare controller client(filesharecontroller/client)
  3. selector to select the profiles
  4. Filesharecontroller server(filesharecontroller/controller.go)

Dock workflow

  1. It checks with fileshareproto to validate the dock creation
  2. Client communicates to dock server(filesharedock/client)
  3. Server dock.go - which registers to the dock and provision the dock so it contacts dock/discovery to discover and maps to backend drivers

Which issue this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close that issue when PR gets merged): fixes #

Special notes for your reviewer:
@xxwjj, @wisererik, @leonwanghui, @xing-yang , @NajmudheenCT, @ kumarashit , @rhsakarpos, @himanshuvar, @skdwriting @PravinRanjan10
Release note:

@Shruthi-1MN Shruthi-1MN changed the title @[WIP] Implementation of fileshare controller and dock [WIP] Implementation of fileshare controller and dock Apr 17, 2019
pkg/filesharecontroller/selector/filter.go Outdated Show resolved Hide resolved
@@ -0,0 +1,398 @@
// Copyright (c) 2017 Huawei Technologies Co., Ltd. All Rights Reserved.
Copy link
Member

Choose a reason for hiding this comment

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

may not need this file if we are using controller/selector/filter

Copy link
Contributor Author

Choose a reason for hiding this comment

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

It is to test filter, it is needed as we have to do unit testing and as it uses fileshare proto buf we have to test for file share feature.

pkg/filesharecontroller/controller.go Outdated Show resolved Hide resolved
pkg/filesharecontroller/selector/filter.go Outdated Show resolved Hide resolved
@jackhaibo
Copy link
Contributor

There should be a file protocol option to create nfs or cifs.

@Shruthi-1MN
Copy link
Contributor Author

You have to choose profile I'd while creating file share that takes care of access protocol. While creating profile there will be option of access protocol i.e nfs/cifs

@leonwanghui leonwanghui added the feature there is a huge framework change or feature addition label Apr 24, 2019
@leonwanghui leonwanghui added this to In progress in Capri Release Planning via automation Apr 24, 2019
@leonwanghui leonwanghui added this to the Capri Milestone-3 milestone Apr 24, 2019
string name = 2;
// The requested capacity of the file share, required.
int64 size = 3;
// The description of the file share, optional.
Copy link
Contributor

Choose a reason for hiding this comment

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

CreateFileShareOpts lacks shareProto filed which represents CIFS or NFS file share protocol. Oceanstor file driver need this filed. If there is a multi-tenant scenario, please add tenantID or userID to CreateFileShareOpts .

Copy link
Contributor

Choose a reason for hiding this comment

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

Please see the oceanstor file driver code for more details.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

I am closing this PR as it has merge issues and invalid branch latest code change all other details,

Capri Release Planning automation moved this from In progress to Done Apr 24, 2019
@Shruthi-1MN Shruthi-1MN reopened this Apr 24, 2019
Capri Release Planning automation moved this from Done to In progress Apr 24, 2019
@Shruthi-1MN Shruthi-1MN force-pushed the master branch 3 times, most recently from a903b84 to 37c1c1c Compare April 30, 2019 03:30
@coveralls
Copy link

coveralls commented Apr 30, 2019

Coverage Status

Coverage remained the same at 30.066% when pulling 139bc53 on Shruthi-1MN:master into 548f718 on opensds:development.

Add some tags for installation files, and rename `Redhat` to `Red Hat Enterprise Linux`.
@leonwanghui
Copy link
Collaborator

I think this PR should be closed, because it seems having no files changed.

@Shruthi-1MN Shruthi-1MN closed this May 5, 2019
Capri Release Planning automation moved this from In progress to Done May 5, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature there is a huge framework change or feature addition
Projects
No open projects
Development

Successfully merging this pull request may close these issues.

None yet

6 participants