forked from opensearch-project/opensearch-migrations
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Fully pull out version specific creators
Signed-off-by: Peter Nied <[email protected]>
- Loading branch information
Showing
10 changed files
with
134 additions
and
101 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
72 changes: 70 additions & 2 deletions
72
MetadataMigration/src/main/java/org/opensearch/migrations/clusters/SnapshotSource.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,5 +1,73 @@ | ||
package org.opensearch.migrations.clusters; | ||
|
||
public class SnapshotSource { | ||
|
||
import java.nio.file.Path; | ||
|
||
import org.opensearch.migrations.Flavor; | ||
import org.opensearch.migrations.Version; | ||
|
||
import com.rfs.models.GlobalMetadata; | ||
import com.rfs.models.IndexMetadata; | ||
import com.rfs.common.SnapshotRepo; | ||
import com.rfs.common.S3Repo; | ||
import com.rfs.common.SourceRepo; | ||
|
||
import com.rfs.common.FileSystemRepo; | ||
import com.rfs.version_es_7_10.GlobalMetadataFactory_ES_7_10; | ||
import com.rfs.version_es_7_10.IndexMetadataFactory_ES_7_10; | ||
import com.rfs.version_es_7_10.SnapshotRepoProvider_ES_7_10; | ||
|
||
import com.rfs.common.S3Uri; | ||
|
||
|
||
public class SnapshotSource implements SourceCluster { | ||
|
||
private final SourceRepo repo; | ||
private final Version version; | ||
|
||
public SnapshotSource(Version version, String snapshotRepoPath) { | ||
this.version = version; | ||
this.repo = new FileSystemRepo(Path.of(snapshotRepoPath)); | ||
} | ||
|
||
public SnapshotSource(Version version, String s3LocalDirPath, String s3RepoUri, String s3Region) { | ||
this.version = version; | ||
this.repo = S3Repo.create(Path.of(s3LocalDirPath), new S3Uri(s3RepoUri), s3Region); | ||
} | ||
|
||
@Override | ||
public Version getVersion() { | ||
// Make sure the snapshot exists | ||
// Else throw | ||
// Read the snapshot file, get the version | ||
// Else throw | ||
// | ||
return version; | ||
} | ||
|
||
private SnapshotRepo.Provider getProvider() { | ||
if (version.equals(Version.builder().flavor(Flavor.Elasticsearch).major(7).minor(10).build())) { | ||
return new SnapshotRepoProvider_ES_7_10(this.repo); | ||
} | ||
|
||
throw new UnsupportedOperationException("Unsupported version " + getVersion()); | ||
} | ||
|
||
@Override | ||
public GlobalMetadata.Factory getMetadata() { | ||
if (version.equals(Version.builder().flavor(Flavor.Elasticsearch).major(7).minor(10).build())) { | ||
return new GlobalMetadataFactory_ES_7_10(getProvider()); | ||
} | ||
|
||
throw new UnsupportedOperationException("Unsupported version " + getVersion()); | ||
} | ||
|
||
@Override | ||
public IndexMetadata.Factory getIndexMetadata() { | ||
if (version.equals(Version.builder().flavor(Flavor.Elasticsearch).major(7).minor(10).build())) { | ||
return new IndexMetadataFactory_ES_7_10(getProvider()); | ||
} | ||
|
||
throw new UnsupportedOperationException("Unsupported version " + getVersion()); | ||
} | ||
|
||
} |
7 changes: 5 additions & 2 deletions
7
MetadataMigration/src/main/java/org/opensearch/migrations/clusters/TargetCluster.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,11 +1,14 @@ | ||
package org.opensearch.migrations.clusters; | ||
|
||
import java.util.List; | ||
import org.opensearch.migrations.metadata.tracing.IMetadataMigrationContexts; | ||
import org.opensearch.migrations.DataFiltersArgs; | ||
import org.opensearch.migrations.metadata.GlobalMetadataCreator; | ||
import org.opensearch.migrations.metadata.IndexCreator; | ||
|
||
public interface TargetCluster { | ||
GlobalMetadataCreator getGlobalMetadataCreator( | ||
public GlobalMetadataCreator getGlobalMetadataCreator( | ||
DataFiltersArgs dataFilters, | ||
IMetadataMigrationContexts.IClusterMetadataContext context); | ||
|
||
public IndexCreator getIndexCreator(); | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
74 changes: 0 additions & 74 deletions
74
MetadataMigration/src/main/java/org/opensearch/migrations/commands/SnapshotSource.java
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
15 changes: 15 additions & 0 deletions
15
RFS/src/main/java/org/opensearch/migrations/metadata/IndexCreator.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,15 @@ | ||
package org.opensearch.migrations.metadata; | ||
|
||
import java.util.Optional; | ||
|
||
import org.opensearch.migrations.metadata.tracing.IMetadataMigrationContexts; | ||
|
||
import com.fasterxml.jackson.databind.node.ObjectNode; | ||
import com.rfs.models.IndexMetadata; | ||
|
||
public interface IndexCreator { | ||
public Optional<ObjectNode> create( | ||
IndexMetadata index, | ||
IMetadataMigrationContexts.ICreateIndexContext context | ||
); | ||
} |